Arduino Uno R3 bilan nafas oluvchi LED: 5 qadam
Arduino Uno R3 bilan nafas oluvchi LED: 5 qadam
Anonim
Arduino Uno R3 bilan nafas oluvchi LED
Arduino Uno R3 bilan nafas oluvchi LED

Bu darsda biz qiziq bir narsani sinab ko'ramiz - dasturlash orqali LEDning yorqinligini bosqichma -bosqich o'zgartirish. Pulsatsiyalanuvchi yorug'lik nafas olayotganga o'xshaydi, biz unga sehrli nom beramiz - nafas oluvchi LED. Biz bu ta'sirni puls kengligi modulyatsiyasi (PWM) yordamida amalga oshiramiz.

1 -qadam: komponentlar

- Arduino Uno taxtasi * 1

- USB kabeli * 1

- Rezistor (220Ω) * 1

- LED * 1

- Non paneli * 1

- o'tish simlari

2 -qadam: printsip

Printsip
Printsip

Puls kengligi modulyatsiyasi yoki PWM - raqamli vositalar yordamida analog natijalarni olish usuli. Raqamli boshqaruv kvadrat to'lqinni yaratish uchun ishlatiladi, signal yoqilgan va o'chirilgan. Yoqish-o'chirish sxemasi to'lqinli (5 voltli) va o'chirilgan (0 voltsli) orasidagi kuchlanishni simulyatsiya qilishi mumkin, bu esa signalning vaqtini signal uzilib qolgan vaqtga o'zgartiradi. "O'z vaqtida" davomiyligi puls kengligi deb ataladi. Turli xil analog qiymatlarni olish uchun siz kenglikni o'zgartirasiz yoki o'zgartirasiz. Agar siz ushbu o'chirish rejimini, masalan, LED bilan, tezlik bilan takrorlasangiz, shunday bo'ladi: signal-bu 0 dan 5V gacha bo'lgan barqaror kuchlanish, bu LEDning yorqinligini boshqaradi. (Arduino rasmiy veb -saytida PWM tavsifiga qarang).

Quyidagi grafikda yashil chiziqlar muntazam vaqtni ifodalaydi. Bu muddat yoki davr PWM chastotasining teskarisidir. Boshqacha qilib aytganda, Arduino PWM chastotasi taxminan 500 Gtsda, yashil chiziqlar har biri 2 millisekundni o'lchaydi.

AnalogWrite () ga qo'ng'iroq 0 - 255 shkalasida, analogWrite (255) 100% ish aylanishini talab qiladi (har doim yoniq) va analogWrite (127) - 50% ish tsikli (yarim vaqtda) misol

Siz PWM qiymati qanchalik kichik bo'lsa, kuchlanishga aylantirilgandan keyin uning qiymati shuncha kichik bo'lishini topasiz. Keyin LED mos ravishda xira bo'ladi. Shuning uchun, biz PWM qiymatini boshqarish orqali LEDning yorqinligini nazorat qila olamiz.

3 -qadam: sxematik diagramma

Sxematik diagramma
Sxematik diagramma

4 -qadam: protseduralar

Protseduralar
Protseduralar
Protseduralar
Protseduralar

Dasturlash orqali biz analogWrite () funktsiyasidan foydalanib, 9 -pinga turli xil qiymatlarni yozishimiz mumkin. Bunga qarab LEDning yorug'ligi o'zgaradi. SunFounder Uno taxtasida 3, 5, 6, 9, 10 va 11 -pinli PWM pinlari joylashgan ("~" belgisi bilan). Siz har qanday pinni ulashingiz mumkin.

1 -qadam:

Zanjirni yarating.

2 -qadam:

Kodni https://github.com/primerobotics/Arduino saytidan yuklab oling

3 -qadam:

Eskizni Arduino Uno taxtasiga yuklang

Kodni boshqaruv paneliga yuklash uchun Yuklash belgisini bosing.

Agar oynaning pastki qismida "Yuklandi" tugmasi paydo bo'lsa, bu eskiz muvaffaqiyatli yuklanganligini bildiradi.

Bu erda siz LEDning nafas olayotgani kabi, yorug'roq va yorqinroq, so'ngra asta -sekin xiralashib, yana bir bor yorqin va xiralashganini ko'rishingiz kerak.