Loyihalar Ardiunoda Arduino platasi va ideni o'rganish


Mikrokontroller bilan miltillovchi LED davri



Yüklə 1,83 Mb.
səhifə6/7
tarix18.01.2023
ölçüsü1,83 Mb.
#79639
1   2   3   4   5   6   7
Мустакил иш учун лойиҳалар1

Mikrokontroller bilan miltillovchi LED davri


Mikrokontroller LEDning miltillashini boshqarishning eng oson va samarali usuli bo'lishi mumkin. U siz tasavvur qilishingiz mumkin bo'lgan noyob naqshlarni taqdim etadi, shuningdek, uning o'zgaruvchan miltillovchi naqsh oralig'i vaqtini nazorat qiladi.
Bu vaqt uchun biz eng oson usul bilan 8 LEDni qandaydir naqshda miltillash uchun asosiy ATMEGA8535 dan foydalanamiz.
Quyida (14) rasmda 8 ta LEDli oddiy ATMEGA8535 va ularning rezistorlari bilan misol keltiramiz.



14-rasm ATMEGA8535 va miltillovchi LED

Eng o'ngdan chapga, biz mos ravishda D0 dan D7 gacha bo'lgan LED nomini beramiz. Biz PORT.A dan 5 V kuchlanishni kerakli LEDlarni miltillashi uchun etkazib berish uchun chiqamiz.
LEDni boshqarish uchun biz dasturlash uchun biner raqami haqida asosiy fikrga muhtojmiz.
PORT.A chiqishi sifatida 8 ta portga ega, shuning uchun biner kodi quyidagicha bo'ladi:
PORT.A = 0bxxxxxxxx;
bu erda x ni 0 yoki 1 ga o'zgartirish mumkin.
X ni 1 ga o'zgartirsangiz , ulangan LED miltillaydi. X
ni 0 ga o'zgartiring , natijada ulangan LED o'chadi.
Qaysi portlarni dasturlashimiz kerakligini kuzatish uchun quyida 15-rasmni ko'rib chiqamiz.



15-rasm Mikrokontroller va LED

14-rasmdan biz PORTA.0 (PA0) LED1 (D0) bilan, PORTA.1 (PA1) LED2 (D1) va boshqalar bilan bog'langanligini tushunamiz.
PORTA = 0bxxxxxxxx biner kodi A7, A6, … portlarini ifodalaydi. va mos ravishda A0.
Faraz qilaylik, biz A0 ga ulangan LED D0 ni yoqishni xohlaymiz, keyin dastur qatorini yaratamiz, masalan:
PORTA=0b00000001;
bu erda biz D1 ni D7 ga qadar o'chiramiz va faqat D0 ni yoqamiz.
Agar biz 16-rasmdagi kabi LEDni yoqish-o'chirish rejimida miltillovchi qilishni istasak,



16-rasm. Tartibda miltillovchi LED

biner kodini yozamiz
PORTA=0b01010101;
17-rasmdagi kabi qarama-qarshi naqshda,



17-rasm Qarama-qarshi naqshda miltillovchi LED

kodni qayta yozishimiz mumkin:
PORTA=0b10101010;
Oxirgi misol uchun, keling, ushbu ikkita naqshni 18-rasmdagi kabi 1 ta uzluksiz naqshga birlashtiramiz.



18-rasm Mikrokontroller bilan miltillovchi LED

Va kod quyidagicha bo'ladi:
while(1){
PORTA=0b01010101;
kechikish_ms(100);
PORTA=0b10101010;
kechikish_ms(100);}
Bu erda biz "delay_ms (100)" ni naqsh almashtirish oralig'i vaqti sifatida 100 millisekundga qo'shamiz. Loop buyrug'i uchun "while (1)" dan ham foydalanamiz.

Yüklə 1,83 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6   7




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin