Mündəricat:

LED Dot Matrix Ekranı: 5 addım
LED Dot Matrix Ekranı: 5 addım

Video: LED Dot Matrix Ekranı: 5 addım

Video: LED Dot Matrix Ekranı: 5 addım
Video: Display Your Name With Arduino | MAX7219 LED Matrix Display 2024, Noyabr
Anonim
LED Dot Matrix Ekranı
LED Dot Matrix Ekranı

Bu layihədə yenidən iki növbəli reyestr dəstindən istifadə etməlisiniz. Bunlar nöqtə matrisi ekranının satır və sütunlarına bağlanacaq. Daha sonra ekranda sadə bir obyekt və ya sprite göstərib canlandıracaqsınız. Bu layihənin əsas məqsədi, nöqtəli matrisli bir ekranın necə işlədiyini göstərmək və sahib olmaq üçün əvəzolunmaz bir bacarıq olduğu üçün multipleksləmə anlayışını tanıtmaqdır.

Addım 1: Lazım olan şeylər

Tələb olunan şeylər
Tələb olunan şeylər

Bu layihə üçün sizə lazım olacaq -: 1. 1 LED matris 2. 8 müqavimət 1k ohm 3. 8 557 tranzistor 4. 1 ULN2803 IC 5 Arduino 6. 2 74HC595 keçid reyestri 7. 2 Çörək lövhəsi 8. Bağlayıcı tellər

Addım 2: İşləmək

Dot matrix vahidləri ümumiyyətlə 5x7 və ya 8x8 LED matrislərində olur. LEDlər, hər bir LED -in anodu və ya katodu hər cərgədə ümumi olduğu üçün matrisə bağlanmışdır. Başqa sözlə, ümumi bir anodlu LED nöqtəli matris vahidində, LED -lərin hər bir cərgəsində bu cərgədəki bütün anodları bir araya gətirərdi. LED -lərin katodları hər sütunda bir -birinə bağlanacaq. Bunun səbəbi tezliklə bəlli olacaq. Tipik tək rəngli 8x8 nöqtəli matris vahidi, hər satır üçün 8 və hər sütun üçün 8 ədəd sancağa malik olacaq. Satırların və sütunların bir -birinə bağlanmasının səbəbi, tələb olunan sancaqlar sayını minimuma endirməkdir. Əgər belə olmasaydı, tək rəngli 8x8 nöqtəli matris vahidinə hər LED üçün bir ədəd və ümumi anod və ya katod konnektoru olan 65 pin lazımdır. Satırları və sütunları bir -birinə bağlayaraq, yalnız 16 pin lazımdır. Müəyyən bir LED -in müəyyən bir vəziyyətdə yanmasını istəyirsinizsə, bu, indi problem yaradır. Məsələn, ümumi bir anod vahidiniz varsa və X, Y mövqeyi 5, 3 -də (5 -ci sütun, 3 -cü sıra) LED -i yandırmaq istəsəniz, 3 -cü sıraya bir cərəyan tətbiq edər və 5 -ci sütun pinini torpaqlayarsınız. 5 -ci sütunda və 3 -cü sıradakı LED indi yanacaq. İndi təsəvvür edək ki, 3 -cü sütunda, 6 -cı satırdakı LED -i də yandırmaq istəyirsən. Beləliklə, 6 -cı sıraya bir cərəyan tətbiq edir və 3 -cü sütun pinini yerə qoyursan. Sütun 3, satır 6dakı LED indi yanır. Ancaq gözləyin … sütun 3, satır 6 və sütun 5, satır 6dakı LEDlər də yanır. Bunun səbəbi, 3 -cü və 6 -cı sıralara və 3 -cü və 5 -ci sütunlara güc tətbiq etməyinizdir, istədiyiniz LED -ləri söndürmədən söndürə bilməzsiniz. Göründüyü kimi, satır və sütunları olduğu kimi bir -birinə bağlayan yalnız iki tələb olunan LED -i yandırmağın heç bir yolu yoxdur. Bunun işləməsinin yeganə yolu, hər bir LED üçün ayrı bir pinoutun olmasıdır, yəni pinlərin sayı 16-dan 65-ə qədər yüksələcək. ən azı 64 rəqəmsal çıxışı olan bir mikro nəzarətçi. Bu problemi həll etməyin bir yolu varmı? Bəli var və buna multiplexing (və ya muxing) deyilir. Multiplexing, ekranın bir sətrini bir anda açmaq texnikasıdır. Yandırmaq istədiyiniz LED -i ehtiva edən cərgəni ehtiva edən sütunu seçdikdən sonra gücü o sıraya çevirərək (və ya ümumi katot ekranları üçün əks istiqamətdə) o sıradakı seçilmiş LEDlər yanacaq. Sonra bu sıra söndürülür və növbəti sıra açılır, müvafiq sütunlar yenidən seçilir və ikinci cərgədəki LEDlər yanacaq. Aşağıya çatana qədər hər bir sıra ilə təkrarlayın və sonra yenidən yuxarıdan başlayın. Bu kifayət qədər sürətli (100 Hz -dən çox və ya saniyədə 100 dəfə) edildikdə, görmə davamlılığı fenomeni (retinada saniyənin təxminən 1/25 hissəsi qaldıqda) ekranın görünəcəyini göstərir hər bir sıra ardıcıl olaraq açılıb -söndürülsə də, sabit olun. Bu texnikanı istifadə edərək, eyni LED və ya sütundakı digər LEDlər yanmadan fərdi LED -lərin göstərilməsi problemini həll edirsiniz. Satırları tarayaraq və bu satırın hər bir sütunundakı müvafiq LED -ləri işıqlandıraraq və bunu çox sürətli (100 Hz -dən çox) edərkən insan gözü şəkli sabit olaraq qəbul edəcək və ürək şəkli LED naxışında tanınacaq. Layihənin kodunda bu multipleksləmə texnikasından istifadə edirsiniz. Xarici LEDləri göstərmədən ürək animasiyasını belə göstərə bilərsiniz.

Addım 3:

Şəkil
Şəkil

İstifadə edə biləcəyiniz rezistorların dəyərini hesablamalısınız, əvvəlcə LED -lərinizdə bəzi xüsusiyyətlərə sahib olmalısınız, onların irəli gərginliyini və irəli cərəyanını bilməlisiniz, bu məlumatları məlumat cədvəlindən əldə edə bilərsiniz. Dövrə 5V -də işləyir, buna görə də 5v adapterdən əldə edilə bilən Mənbə gərginliyiniz 5V -dir, sxemləri daha yaxşı görmək üçün orijinal faylı yükləyin. (Şəklin sol üst küncündəki "i" işarəsinə basın)

Addım 4: Çalışdırın

Matrisdə arduino serial monitorundan cümləni göstərən bir proqram hazırladım, kodum çox sadədir. Ekranın şriftini düzəltmək üçün bir Android tətbiq etdim. Zəhmət olmasa https://play.google.com/store/apps/details?id=com.androidtutorialpoint.leddotmatrix tətbiqini quraşdırmaq üçün aşağıdakı səhifəyə daxil olun.

Addım 5: Hər şey bitdi !!!!!!!

Hər şey hazırdır !!!!!!!!!
Hər şey hazırdır !!!!!!!!!

Təbrik edirik, 8x8 led matrisiniz hazırdır. İstədiyiniz hər şeyi göstərə bilərsiniz. İndi U ilə oynaya və Led`s və ya 16x8 matrisi əl ilə lehimləməklə 8x8 led matris edə bilərsiniz !!!!!!

Tövsiyə: