Mundarija:

LED matritsa tugmachalari: 4 qadam
LED matritsa tugmachalari: 4 qadam

Video: LED matritsa tugmachalari: 4 qadam

Video: LED matritsa tugmachalari: 4 qadam
Video: STILISTLAR JANGI 4-SON 2024, Iyul
Anonim
LED matritsa tugmachalari
LED matritsa tugmachalari

Ushbu loyihani Arduino -ning boshqa kirish loyihasi deb hisoblash mumkin, bu sizning odatiy "yonib -o'chadigan LED" loyihangizga qaraganda ancha rivojlangan. Ushbu loyihada LED matritsasi, tugmachalari, siljish registrlari (Arduino kartangizdagi pimlarni saqlashi mumkin) va multipleksing deb nomlangan asosiy tushuncha mavjud. Umid qilamanki, siz o'qituvchini ma'rifatli deb topasiz va uni yaxshilashga o'zingizni chorlaysiz!

Ta'minotlar

(1x) Arduino Uno

(5x) tegish tugmachalari

(2x) 0,1 uF kondansatkichlari

(2x) 1 uF kondansatkichlari

(8x) 1k rezistorlar

(5x) 10k rezistorlar

(2x) 74HC595 smenali registrlar

Jumper simlari

Qora sim

Qizil sim

1 -qadam: 1 -qadam: LED matritsasini yaratish

1 -qadam: LED matritsasini yaratish
1 -qadam: LED matritsasini yaratish
1 -qadam: LED matritsasini yaratish
1 -qadam: LED matritsasini yaratish
1 -qadam: LED matritsasini yaratish
1 -qadam: LED matritsasini yaratish

Men bu loyihada 8x8 LED matritsasini yasagan qo'llanmani bu erda topishingiz mumkin. LED matritsasi uchun umumiy konfiguratsiyalar mavjud:

a) Umumiy qatorli anod

b) Umumiy qatorli katod

Men matritsaning umumiy qatorli katodli tartibini qo'llaganim uchun, men buni asosan shu erda muhokama qilaman va siz ham xuddi shu mantiqni Common Row Anote tartibiga kengaytira olasiz. Umumiy qatorli katodli tartibda, LEDlarning katodlari (yoki LEDning qisqa oyog'i bo'lgan manfiy terminallar) bir -biriga ketma -ket ulanadi, anodlar (yoki LEDning uzun oyog'i bo'lgan musbat terminallari) ustunlar bilan bir -biriga ulanadi.. Muayyan LEDga murojaat qilish uchun LED katot past bo'lgan katod qatorini torting va LED anod baland bo'lgan anod ustunini torting.

E'tibor bering: yuqoridagi havolada ko'rsatilgan LED matritsasini yaratishda, LEDlarga har qanday kuchlanishni qo'llashdan oldin, anod ustunlarini 1k ohmli rezistorlar bilan ulashga ishonch hosil qiling.

2 -qadam: 2 -qadam: Tugmalar va Shift registrlarini ulash

2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash
2 -qadam: Tugmalar va Shift registrlarini ulash

Tugmalar va smenali registrlarning simlari yuqorida ko'rsatilgan. Shuni ta'kidlashni istardimki, sxemadagi siljish registrlarida chiplar uchun er (IC 8 -pin) va Vcc yoki quvvat manbai (IC ning 16 -pinli) pinlari ko'rsatilmagan; tuproq pimi Arduino kartasining GND piniga, Vcc esa Arduino kartasining 5V piniga ulangan. Har bir smenali registrning Vcc pimi, shuningdek, erga ulangan 0,1uF kondansatkichga ulanadi.

Eslatma: Har bir smenali registrning chiqishlari QA - QH sifatida ro'yxatga olinadi (QH*ga e'tibor bermang). Ular eng muhim bitdan (LSB) (QA uchun) eng muhim bitdan (MSB) (QH uchun), ya'ni QA 0 -qator yoki ustunni nazorat qiladigan va hokazolardan iborat.

3 -qadam: 3 -qadam: Kodni yuklash

LED matritsasini boshqarish kodi ushbu darslikka biriktirilgan. Men kodni iloji boricha izohlashga harakat qildim, shuning uchun dastur qanday ishlashi aniq bo'ladi. Dasturning asosiy asosi shundaki, qaysi LEDlarni yoqish yoki o'chirish kerakligini kuzatadigan matritsa mavjud. Keraksiz diodlarni tasodifan yoqmasdan, turli xil LEDlarni to'g'ri ko'rsatish uchun multiplekslash tushunchasidan foydalanish kerak. Multiplexing - bu alohida qatorda alohida LEDlarni yondirish, boshqa LEDlar esa boshqa qatorlarda, keyin qolgan qatorlar uchun ham xuddi shunday. Hiyla -nayrang shundaki, agar LEDlar satrlar bo'ylab etarlicha tez aylansa, sizning ko'zingiz birma -bir satrlar yonib turganini aytadi. Agar siz LEDni ishlatib ko'zingizni aldashning boshqa usullarini kashf qilmoqchi bo'lsangiz, ko'rish qobiliyatining kontseptsiyasini (Google yoki Instructables -da osongina qidirish) ko'rib chiqishingiz mumkin.

Anod ustunlari va katod qatorlarini yangilash usuli "UpdateShiftRegisters" deb nomlangan foydalanuvchi tomonidan belgilanadi. Bu funksiya birinchi navbatda chiqishga yangi bayt (8 bit) yuborilishini nazorat qiladigan qulf pinini aylantiradi, shuning uchun chipga yangi bitlar yozilayotganda chiqishlarni o'zgartirish mumkin emas. Keyin, "ShiftOut" deb nomlangan o'rnatilgan Arduino funktsiyasidan foydalangan holda, u ma'lumotlarni registrlarga o'tkazishni amalga oshiradi, dastur qaysi katodda past bo'ladi va qaysi (anodli) ustunlar baland bo'lishi kerakligini yozadi. Nihoyat, chiqish pinini (LED) yangilash uchun mandal pimi yuqoriga tortiladi.

4 -qadam: Qo'shimcha ma'lumotlar/manbalar

Mana bu loyiha haqida qo'shimcha ma'lumot beradigan veb -saytlar yoki kitoblarga havolalar:

learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/arduino-code

www.arduino.cc/en/tutorial/ShiftOut

www.ti.com/lit/ds/symlink/sn74hc595.pdf

www.youtube.com/watch?v=7VYxcgqPe9A

www.youtube.com/watch?v=VxMV6wGS3NY

Arduino -dan boshlash, Massimo Banzining 2 -nashri

Tavsiya: