MUHAMMAD AL
-
XORAZMIY NOMIDAGI TOSHKENT
AXBOROT TEXNOLOGIYALARI UNIVERSITETI
O‘RNATILGAN TIZIMLAR FANIDAN
LABORATORIYA ISH
MAVZU:
“
Arduino UNO” kontrollerida “Svetofor kodi”.
Bajardi: 022
-
19 guruh Asadov Jasur
Biz uchta LEDni ulaymiz.
Plyus raqamli pinga, minus erga. Biz uchta pinni umumiy non paneli
avtobusi yordamida birlashtirdik. Biz svetoforning qizil chirog'ini
11 - pinga, sariqni
10 - ga, yashilni
9 - ga ulaymiz.
Arduinoda LEDlar bilan svetofor sxemasi.
DigitalWrite - da HIGH atribut
iga ega bo'lgan har bir so'z "yoqish", LOW atributiga ega
DigitalWrite - da "o'chirish" va kechikish yordamida kechikish hosil qilish.
Bu erda,
masalan, qizildan yashil rangga o'tishni aniqlaydigan dastur fragmenti.
// Sariq va qizil rangni o'chirib qo'ying
digitalWrite (11, LOW); // Qizil
digitalWrite (10, LOW); // Sariq
// yashil rangni yoqing
digitalWrite(9, YUQORI);
// 3 soniya kechikish o'rnating
kechikish (3000);
Dasturda ma'lum pin raqamlariga bog'lanmaslik uchun siz kerakli pin
raqamini
o'z ichig
a olgan konstantalarni yaratishingiz mumkin va kerak. Kodda biz
raqamlardan
emas, bu doimiylardan foydalanamiz
. Va agar biz ulanish sxemasini o'zgartirishimiz
kerak bo'lsa, unda biz eskizdagi raqamlarni faqat bitta joyda o'zgartirishimiz
kerak
bo'ladi. Huj
jatda global almashtirishni amalga oshirishga hojat qolmaydi.
Yuqoridagi misol konstantalardan foydalanganda shunday ko'rinadi:
const int LED_RED = 11; // Port 11 qizil LED
const int LED_YELLOW = 10; // Port 10 sariq LED
const int LED_GREEN = 9; // Port
9 yashil LED
const int TIMEOUT_GREEN = 3000;
// Sariq va qizil LEDlarni o'chiring.
digitalWrite (LED_SARI, PAST);
digitalWrite (LED_RED, LOW);
// GrnTime
-
da yashil LEDni yoqing
digitalWrite(LED_GREEN, YUQORI);
kechikish (TIMEOUT_GREEN);
Shunday qilib,
siz yashil chiroqni miltillovchi qilishingiz mumkin. Oddiy miltillovchi
kabi:
// Yashil LED miltillaydi
// Birinchi marta
digitalWrite (LED_GREEN, LOW);
kechikish (TIMEOUT_FLASH_GREEN);
digitalWrite(LED_GREEN, YUQORI);
kechikish (TIMEOUT_FLASH_GREEN);
/
/ Ikkinchi marta
digitalWrite (LED_GREEN, LOW);
kechikish (TIMEOUT_FLASH_GREEN);
digitalWrite(LED_GREEN, YUQORI);
kechikish (TIMEOUT_FLASH_GREEN);
// Uchinchi marta
digitalWrite (LED_GREEN, LOW);
kechikish (TIMEOUT_FLASH_GREEN);
digitalWrite(LED_GREEN,
YUQORI);
kechikish (TIMEOUT_FLASH_GREEN);
Dostları ilə paylaş: |