Kirish: Arduino 101 asoslari Eliesalame
Download 329 Kb.
|
2-amaliyot barno
5-qadam: If bayonoti
Men oldingi misoldagi kabi sxemadan foydalanaman va if/else iborasi yordamida LEDni yoqaman. If iborasi kodga shart kiritishning juda samarali usulidir. Arduino IDE da File/Examples/05.Control ostida topilgan IfStatementConditional nomli eskizdan foydalanaman. Sizga Arduino, potansiyometr, LED va bir nechta o'tish simlari kerak bo'ladi. Potansiyometrning o'rta pinini Arduino-dagi A0 (analog 0) piniga, so'ngra + ve-ni Arduino-dagi 5v ga va -ve-ni Arduino-dagi GND ga ulang. Va LEDning + va simini Arduino-dagi D5 ga va -ve simini GND ga ulang. Ushbu Sketchda A0 pinining qiymati ketma-ket monitorda chop etiladi va bir vaqtning o'zida biz potansiyometrni aylantirganimizda LEDning yorqinligi o'zgaradi. Eskiz const int analogPin = A0; // sensor biriktirilgan pin const int ledPin = 5; // LED ulangan pin const int chegarasi = 400; // analog kirish diapazonidagi ixtiyoriy chegara darajasi bekor o'rnatish() { pinMode (ledPin, OUTPUT); // LED pinini chiqish sifatida ishga tushiring: Serial.begin(9600); // ketma-ket aloqalarni ishga tushiring: } void loop() { int analogValue = analogRead(analogPin); // potansiyometrning qiymatini o'qing: agar (analogValue > threshold) { // agar analog qiymat etarlicha yuqori bo'lsa, LEDni yoqing: digitalWrite (ledPin, HIGH); } boshqa { digitalWrite (ledPin, LOW); } Serial.println(analogValue); // analog qiymatni chop eting: kechikish (1); // barqarorlik uchun o'qishlar orasidagi kechikish } Keling, eskizni ajratamiz: const int analogPin = A0; const int ledPin = 5; const int chegarasi = 400; Odatdagidek biz o'zgaruvchilardan boshlaymiz, bu safar men "const int" dan tur sifatida foydalanishni tanladim, bu o'zgaruvchilar qiymati hech qachon o'zgarmasligini anglatadi. analogPin har doim analog pin 0 ga biriktiriladi ledPin har doim raqamli pin 5 ga ulanadi chegara har doim 400 bo'ladi void setup() { pinMode(ledPin, OUTPUT); Serial.begin(9600); } Void sozlamalarida yangi narsa yo'q, biz 5-pinni OUTPUT ga o'rnatdik, chunki unga LED ulangan va biz ketma-ket monitorni 9600bit / s tezlikda ishga tushiramiz. void loop() { int analogValue = analogRead(analogPin); agar (analog qiymat > chegara) { digitalWrite (ledPin, HIGH); } boshqa { digitalWrite (ledPin, LOW); } Serial.println(analogValue); kechikish (1); } Void siklining birinchi qatori analogValue deb nomlangan int tipidagi mahalliy o'zgaruvchining deklaratsiyasi bo'lib, biz unga analogPin o'zgaruvchisidan o'qigan qiymatni belgilaymiz. Download 329 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling