V tem projektu bomo zasnovali 8x8 LED matrični zaslon, za to pa bomo povezali 8x8 LED matrični modul z Arduino Uno. Matrica LED 8x8 vsebuje 64 LED (diod, ki oddajajo svetlobo), ki so razporejene v obliki matrice, zato je ime LED matrica.
Te matrike lahko naredimo tako, da vežemo 64 LED, vendar je ta postopek dolgotrajen. Zdaj so na voljo na dan v kompaktnih oblikah, kot je prikazano na spodnji sliki. Ti kompaktni moduli so na voljo v različnih velikostih in različnih barvah. Cena modula je enaka strošku 64 LED, zato je za ljubitelje najlažje delati.
Gola LED matrica ima 16 pin izhodov z 8 skupnimi pozitivnimi in še 8 skupnimi negativnimi. Za neposredno povezavo te matrike z UNO moramo prihraniti 16 nožic na UNO. Ker so izhodni zatiči nizki na UNO, ne moremo prihraniti 16 PIN-ov. Torej moramo to matrico povezati z gonilniškim čipom. Ta gonilniški čip je skupaj z matriko v kompletu, ki je prikazan na spodnji sliki.
Ta modul bo povezan z Arduinom za prikaz abeced, torej matrični prikaz. Najprej za povezovanje matrike LED z Arduino moramo prenesti knjižnico, posebej zasnovano za LED MATRIX. Ta knjižnica bo na voljo na:
Po prenosu datoteke Zip izvlecite vsebino v mapo ARDUINO. (Pojdite na lokalni disk, na katerem je nameščena programska oprema ARDUINO NIGHTLY, odprite mapo, poiščite mapo z imenom »knjižnica«, izvlecite vsebino zip datoteke v tej mapi, znova zaženite program, ki ga boste zdaj lahko uporabljali za funkcije vmesnika matrice)
Potrebne komponente
Strojna oprema: Arduino Uno, napajalnik (5v), kondenzator 100 uF (povezan prek napajalnika)
Programska oprema: Arduino Nightly
Shema vezja in razlaga
Povezave med Arduino Uno in matričnim modulom LED so prikazane v spodnji tabeli.
PIN2 ------------------ LOAD ali CHIPSELECT modula LED
PIN3 ------------------ URA LED modula
PIN4 ------------------ PODATKI modula LED
+ 5V ------------------ VCC LED modula
GND ------------------ GND LED modula
Shema vezja 8 * 8 LED matričnega zaslona je prikazana na spodnji sliki.
Za uporabo posebne terminske pogodbe, imenovane namestitev nove knjižnice, moramo v programu vzpostaviti nekaj ukazov in so navedeni spodaj.
#include "LedControlMS.h" #define NBR_MTX 1 LedControl lc = LedControl (4,3,2, NBR_MTX); lc.writeString (0, "CIRCUITDIGEST"); lc.clearAll (); |
Najprej moramo poklicati datoteko glave za povezovanje matrike LED z Arduino Uno. To je "#include" LedControlMS.h "", ta datoteka glave pokliče knjižnico posebne funkcije.
S temi moduli imamo funkcijo, tako da lahko zaporedoma povežemo veliko število modulov in jih skupaj programiramo kot en zaslon. Ta funkcija je priročna, ko potrebujemo prikazovalno enoto, ki lahko prikaže več znakov hkrati. Zato moramo krmilniku povedati, koliko zaslonov povezujemo.
V tem modulu so v glavnem tri zatiči; pretok podatkov od UNO do modula poteka s temi tremi nožicami. Zatiči so DATAIN (zatič za prejemanje podatkov), CLOCK (zatič ure) in CHIPSELECT (zajem prejemnika ukazov).
Zdaj moramo UN-u povedati, kje povezujemo te nožice. To se naredi z ukazom »LedControl lc = LedControl (4,3,2, NBR_MTX); ". “Lc.writeString (0," CIRCUITDIGEST ");”, ta ukaz UNO sporoča, kateri znaki naj bodo prikazani na matriki LED. Zgornje prikazuje zaslon "CIRCUITDIGEST", z vsakim znakom enkrat.
Pred pošiljanjem drugih podatkov moramo počistiti pomnilnik prikaznega čipa, to storimo z ukazom "lc.clearAll ();".
Na ta način lahko z Arduino Uno enostavno povežemo 8x8 LED matrico.