Kirish: Arduino 101 asoslari Eliesalame


Download 329 Kb.
bet6/9
Sana13.12.2022
Hajmi329 Kb.
#999315
1   2   3   4   5   6   7   8   9
Bog'liq
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.

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:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling