11-rasm.Tugma turlari va ko‘rinishi.
Arduino tugmachasini ulash: Tugma yordamida LEDni yoqish vao‘chirish va tugmachani ulashning eng oson yo‘li bilan boshlaylik. Quvvat manbai, LED, 220 omli qarshilik va kontaktlarning ishlashini ochadigan va yopadigan tugma sifatida Arduino bilan sxemani ko‘rib chiqamiz.
12-rasm.Tugmaning tuzilmaviy ko‘rinishi.
Ikki juft oyoqli tugmachani ulashda uzilish kontaktlarini to‘g‘ri tanlash muhim. Rasmga diqqat bilan qarang: bir juft tugmachaning oyoqchalari yon tomonlarida joylashgan. Tugmaningo‘zi to‘rtburchak, lekin kontaktlar juftlari orasidagi masofalar ko‘rinarli. Shunday qilib, almashtirish amalga oshiriladigan tomonning bitta "jufti"o‘rtasida bo‘ladi. Zanjirga qo‘shilish uchun biz bitta va boshqa kontakt bilan bog‘laymiz, ular orasida minimal masofa bor. Kontaktlarning ikkinchi jufti birinchisini takrorlaydi.
Arduino knopkalariga oddiy ma'noda tugmachalar debo‘xshaydi, ammo ulardan turli turlari mavjud bo‘lishi mumkin. Eng oddiy turi, tugmani bosganingizda elektrik devrida bo‘lgano‘zgaruvchanlikni (dastlabki hollarda 0 dan 1 gao‘tish) aniqlaydigan "push-button" yoki "momentary button" degan turi. Bu turi qo‘llash uchun oddiy masofa, turingan nurlanish, pull-down yoki pull-up resistorni ham kerak bo‘lishi mumkin.
const int buttonPin = 2; // Knopkani ulash porti int buttonState = 0; // Tugma holati void setup() { pinMode(buttonPin, INPUT); // Knopkani kirish holatiga sozlash } void loop() { buttonState = digitalRead(buttonPin); // Tugma holatinio‘qish if (buttonState == HIGH) { // Agar tugma bosilgan bo‘lsa // Sizning amalaringizni buring } }
13-rasm. Tugmani ulanish sxemasi.
Bu kod tugmani bosganingizda buttonState ni HIGH (1) qilib, agar tugma bosilmagan bo‘lsa, buttonState ni LOW (0) qiladi.
Tugmani bosilganligini aniqlash uchun digitalRead() funktsiyasidan foydalaniladi. Tugmani bosilgandan so‘ng, siz istalgan boshqa amalni bajara olishingiz mumkin, masalan, LEDni yoqish yokio‘chirish.
Bu yordamida Arduino Button bilan ishlovchilar, tugmani bosish bilan bog‘liq vaziyatlarda amalga oshirishlari mumkin. Tugmani bosish, turingan nurlanishni boshqarish, ulgurji amallarni bajartish va boshqa funksiyalar bilan bog‘liq bo‘lishi mumkin.
const int buttonPin = 2; // Knopkani ulash porti int buttonState = 0; // Tugma holati
void setup() { pinMode(buttonPin, INPUT); // Knopkani kirish holatiga sozlash Serial.begin(9600); // Serial kommunikatsiyani boshlash (9600 bps tezlik) }
void loop() { buttonState = digitalRead(buttonPin); // Tugma holatinio‘qish if (buttonState == HIGH) { // Agar tugma bosilgan bo‘lsa Serial.println("Tugma bosildi!"); // Serial Monitor ga xabar yuborish } } Bu kod Serial.begin(9600); qatori orqali Arduino bilan birlashishni sozlashnio‘z ichiga oladi. Serial.println("Tugma bosildi!"); qatori, agar tugma bosilsa, "Tugma bosildi!" xabarni Serial Monitor oynasiga yuboradi.
Kodni Arduino IDE-da yozib, tugmani bosganingizda "Serial Monitor" oynasida xabarlarni ko‘rish uchun "Tools" menyusidan "Serial Monitor"ni tanlang. Bu yordamida tugmani bosish xabarlari oynada ko‘rinadi.