Përmbajtje:
- Furnizimet
- Hapi 1: Kontrolloni Paketën
- Hapi 2: Pak për këtë matricë të veçantë pikash
- Hapi 3: Drejtuesi MAX7219
- Hapi 4: Qarku
- Hapi 5: Kodi
- Hapi 6: Rezultati
Video: Montimi dhe testimi i MAX7219 LED Dot Matrix: 6 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:18
Një Dot-Matrix Display është një pajisje e cila përmban diodë emetuese të dritës të radhitura në formën e matricës. Këto ekrane matricash dot përdoren në aplikacionet ku Simbolet, Grafikët, Karakteret, Alfabetet, Numrat duhet të shfaqen së bashku në statikë, si dhe Lëvizja rrotulluese. Dot Matrix Display është prodhuar në dimensione të ndryshme si 5x7, 8x8, 16x8, 128x16, 128x32 dhe 128x64 ku numrat përfaqësojnë LED -të në rreshta dhe kolona, gjithashtu këto ekrane vijnë në ngjyra të ndryshme si të kuqe, jeshile, të verdhë, blu, Portokalli, e Bardhë.
Në këtë Instructable, unë do të kaloj përmes ndërlidhjes së një matricë 8x8 Dot e cila ka një drejtues MAX7219 me një Arduino Uno. Le të fillojmë.
Furnizimet
MAX7219
Hapi 1: Kontrolloni Paketën
Siç mund ta shihni, unë kam një version smt të bordit të drejtuesit, është shumë e rëndësishme të verifikoni secilin komponent të nevojshëm pasi përbërësit smd janë shumë të vegjël në madhësi dhe ju lehtë mund t'i humbisni ato. Ekzistojnë edhe versione dip të disponueshme në internet, por unë i përdor versioni smt për madhësinë e tij.
Hapi 2: Pak për këtë matricë të veçantë pikash
moduli i vetëm mund të drejtojë një katodë të zakonshme me matricë 8x8 pika.
Tensioni i funksionimit: 5 v
Përmasat: gjatësia 3.2 cm X 3.2 cm e gjerë X 1.3 cm e lartë, vrima me katër vida, diametri 3 mm
Module me ndërfaqe hyrëse dhe dalëse, mbështetje për kaskadimin e moduleve të shumta.
Terminalet e të dhënave IN dhe OUT janë specifikuar në modul.
Hapi 3: Drejtuesi MAX7219
MAX7219 është një IC i krijuar për të kontrolluar një MATRIX LED 8x8. IC është drejtuesi i serive të ekranit të zakonshëm të katodës (Common Negative) që ndërlidh mikroprocesorët (ose mikrokontrolluesit) në ekranet LED numerike me 7 segmente deri në 8 shifra, ekranet me grafikë ose 64 LED individualë.
Karakteristikat dhe Specifikimet
Gama e tensionit të funksionimit: +4.0 në +5.5V
Tensioni i rekomanduar i funksionimit: +5V
Tensioni maksimal i furnizimit: 6V
Rryma maksimale e lejuar për të nxjerrë përmes secilës kunj të segmentit: 100mA
Rryma maksimale e lejuar përmes secilës kunj tokëzimi DIGIT: 500mA
Konsum i ulët i energjisë
Koha e vonesës nga e dhëna në segment: 2.2mSec
Temperatura e funksionimit: 0 ° C deri +70 ° C
Temperatura e Magazinimit: -65 ° C deri +150 ° C
Hapi 4: Qarku
Qarku është mjaft i thjeshtë dhe mund të ndërtohet duke përdorur tela bluzë meshkuj në femra. Vetëm ndiqni pinout -in dhe ndërtoni qarkun. Më vonë mund ta montoni në një PCB nëse jeni duke bërë një aplikim të përhershëm për Matricën.
Konfigurimi i Pin është si më poshtë:
- Vcc në 5V Pin të Arduino.
- Gnd në Gnd Pin të Arduino.
- DIN në Pin Digital 12 të Arduino.
- CS në Pin dixhital 11 të Arduino
- KLIKONI në Pin dixhital 10 të Arduino.
Hapi 5: Kodi
Këtu në këtë Instructable unë do t'ju ofroj dy kode të ndryshme. Njëri do të gjenerojë disa alfabete angleze dhe figurina në Matrix. Njëra tjetër do të ndezë të gjitha 64 LED -të një nga një. Ju duhet të përdorni bibliotekën lledcontrol për ta bërë atë të funksionojë.
Ky është kodi për alfabetet dhe buzëqeshjet angleze
#përfshi int DIN = 12; int CS = 11; int CLK = 10; bajt e [8] = {0x7C, 0x7C, 0x60, 0x7C, 0x7C, 0x60, 0x7C, 0x7C}; bajt d [8] = {0x78, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x78}; byte u [8] = {0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; bajt c [8] = {0x7E, 0x7E, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x7E}; bajt tetë [8] = {0x7E, 0x7E, 0x66, 0x7E, 0x7E, 0x66, 0x7E, 0x7E}; bajt s [8] = {0x7E, 0x7C, 0x60, 0x7C, 0x3E, 0x06, 0x3E, 0x7E}; bajt pikë [8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18}; bajt o [8] = {0x7E, 0x7E, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; bajt m [8] = {0xE7, 0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xC3, 0xC3}; LedControl lc = LedControl (DIN, CLK, CS, 0); void setup () {lc.shutdown (0, false); // MAX72XX është në modalitetin e kursimit të energjisë gjatë fillimit lc.setIntensity (0, 15); // Vendosni shkëlqimin në vlerën maksimale lc.clearDisplay (0); // dhe pastro ekranin} lakun e pavlefshëm () {byte buzëqeshje [8] = {0x3C, 0x42, 0xA5, 0x81, 0xA5, 0x99, 0x42, 0x3C}; bajt neutral [8] = {0x3C, 0x42, 0xA5, 0x81, 0xBD, 0x81, 0x42, 0x3C}; byte i vrenjtur [8] = {0x3C, 0x42, 0xA5, 0x81, 0x99, 0xA5, 0x42, 0x3C}; printByte (buzëqeshje); vonesa (1000); printByte (neutrale); vonesa (1000); printByte (vrenjtje); vonesa (1000); printEduc8s (); lc. ClearDisplay (0); vonesa (1000); } void printEduc8s () {printByte (e); vonesa (1000); printByte (d); vonesa (1000); printByte (u); vonesa (1000); printByte (c); vonesa (1000); printByte (tetë); vonesa (1000); printBajt (et); vonesa (1000); printByte (pikë); vonesa (1000); printByte (c); vonesa (1000); printByte (o); vonesa (1000); printBajt (m); vonesa (1000); } void printByte (karaktere byte ) {int i = 0; për (i = 0; i <8; i ++) {lc.setRow (0, i, karakteri ); }}
dhe kodin për testimin e të gjitha 64 LED -ve
// Ne gjithmonë duhet të përfshijmë bibliotekën#përfshijë "LedControl.h"
/*
Tani na duhet një LedControl për të punuar me të. ***** Këta numra pin nuk do të funksionojnë me pajisjen tuaj. ***** pin 12 është i lidhur me DataIn pin 10 është i lidhur me CLK pin 11 është i lidhur me LOAD Ne kemi vetëm një MAX72XX të vetme. */ LedControl lc = LedControl (12, 11, 10, 1);
/ * ne gjithmonë presim pak midis azhurnimeve të ekranit */
vonesë e gjatë e panënshkruar = 100;
void setup () {
/ * MAX72XX është në modalitetin e kursimit të energjisë gjatë fillimit, duhet të bëjmë një thirrje zgjimi */ lc.shutdown (0, false); / * Vendosni shkëlqimin në vlerat mesatare */ lc.setIntensity (0, 8); / * dhe pastroni ekranin */ lc.clearDisplay (0); }
/*
Kjo metodë do të shfaqë personazhet për fjalën "Arduino" njëra pas tjetrës në matricë. (keni nevojë për të paktën 5x7 led për të parë të gjithë karakteret) */ void writeArduinoOnMatrix () {/ *këtu janë të dhënat për personazhet */ byte a [5] = {B01111110, B10001000, B10001000, B10001000, B01111110}; byte r [5] = {B00111110, B00010000, B00100000, B00100000, B00010000}; bajt d [5] = {B00011100, B00100010, B00100010, B00010010, B11111110}; byte u [5] = {B00111100, B00000010, B00000010, B00000100, B00111110}; byte i [5] = {B00000000, B00100010, B10111110, B00000010, B00000000}; bajt n [5] = {B00111110, B00010000, B00100000, B00100000, B00011110}; byte o [5] = {B00011100, B00100010, B00100010, B00100010, B00011100};
/ * tani shfaqini ato një nga një me një vonesë të vogël */
lc.setRow (0, 0, a [0]); lc.setRow (0, 1, a [1]); lc.setRow (0, 2, a [2]); lc.setRow (0, 3, a [3]); lc.setRow (0, 4, a [4]); vonesë (vonesë); lc.setRow (0, 0, r [0]); lc.setRow (0, 1, r [1]); lc.setRow (0, 2, r [2]); lc.setRow (0, 3, r [3]); lc.setRow (0, 4, r [4]); vonesë (vonesë); lc.setRow (0, 0, d [0]); lc.setRow (0, 1, d [1]); lc.setRow (0, 2, d [2]); lc.setRow (0, 3, d [3]); lc.setRow (0, 4, d [4]); vonesë (vonesë); lc.setRow (0, 0, u [0]); lc.setRow (0, 1, u [1]); lc.setRow (0, 2, u [2]); lc.setRow (0, 3, u [3]); lc.setRow (0, 4, u [4]); vonesë (vonesë); lc.setRow (0, 0, i [0]); lc.setRow (0, 1, i [1]); lc.setRow (0, 2, i [2]); lc.setRow (0, 3, i [3]); lc.setRow (0, 4, i [4]); vonesë (vonesë); lc.setRow (0, 0, n [0]); lc.setRow (0, 1, n [1]); lc.setRow (0, 2, n [2]); lc.setRow (0, 3, n [3]); lc.setRow (0, 4, n [4]); vonesë (vonesë); lc.setRow (0, 0, o [0]); lc.setRow (0, 1, o [1]); lc.setRow (0, 2, o [2]); lc.setRow (0, 3, o [3]); lc.setRow (0, 4, o [4]); vonesë (vonesë); lc.setRow (0, 0, 0); lc.setRow (0, 1, 0); lc.setRow (0, 2, 0); lc.setRow (0, 3, 0); lc.setRow (0, 4, 0); vonesë (vonesë); }
/*
Ky funksion ndriçon disa Leds me radhë. Modeli do të përsëritet në çdo rresht. Modeli do të pulsojë së bashku me numrin e rreshtit. rreshti numër 4 (indeksi == 3) do të pulsojë 4 herë etj. */ void rreshtat () {për (int rreshti = 0; rreshti <8; rreshti ++) {vonesë (vonesë); lc.setRow (0, rresht, B10100000); vonesë (vonesë); lc.setRow (0, rresht, (bajt) 0); për (int i = 0; i
/*
Ky funksion ndriçon disa Leds në një kolonë. Modeli do të përsëritet në çdo kolonë. Modeli do të pulsojë së bashku me numrin e kolonës. numri i kolonës 4 (indeksi == 3) do të pulsojë 4 herë etj. lc.setColumn (0, col, B10100000); vonesë (vonesë); lc.setColumn (0, col, (byte) 0); për (int i = 0; i
/*
Ky funksion do të ndriçojë çdo Led në matricë. Ledi do të pulsojë së bashku me numrin e rreshtit. rreshti numër 4 (indeksi == 3) do të pulsojë 4 herë etj. */ void single () {for (int row = 0; row <8; row ++) {for (int col = 0; col <8; col ++) { vonesë (vonesë); lc.setLed (0, rresht, kol, e vërtetë); vonesë (vonesë); për (int i = 0; i
lak void () {
shkruajArduinoOnMatrix (); rreshta (); kolona (); beqare (); }
Hapi 6: Rezultati
Shikoni videon e plotë këtu: -MAX7219 8X8 MATRIX LED MATRIM DHE TESTIM duke përdorur ARDUINO
Epo e gjithë kjo punë e vështirë, sigurisht që paguhet mjaft mirë kur shihni rezultatin. Është e vlefshme !!
Regjistrohuni në kanalin tim në youtube: -Gjëra krijuese
Recommended:
Moduli i sensorit 6-bosht FSP200 Kalibrimi dhe testimi: 6 hapa
Moduli i Sensorit 6-bosht FSP200 Kalibrimi dhe Testimi: FSP200 është një procesor i njësisë matëse inerciale me 6 boshte që siguron daljen e drejtimit dhe drejtimit. Ajo kryen një shkrirje të sensorëve të përshpejtuesit dhe xhiros për drejtim dhe drejtim të qëndrueshëm dhe të saktë. FSP200 është i përshtatshëm për përdorim në pajisje robotike
Testimi i imazhit për ngjyrën dhe qartësinë: 8 hapa
Testimi i imazhit për ngjyrën dhe qartësinë: Unë e bëra këtë të udhëzueshëm për mua; për të përmirësuar udhëzimet e mia, megjithatë kam ndërmend të ndaj atë që kam gjetur. Kam vënë re se disa nga imazhet që ngarkoj në Instructabes dalin të përsosura dhe imazhe të tjera humbasin qartësinë, pak të zbardhur ose të paqartë. Nuk di
Kompjuter Brainwave Ndërfaqja Prototip TGAM Starter Kit Saldimi dhe testimi: 7 hapa (me fotografi)
Saldimi dhe Testimi i Trupit të Ndërfaqes Kompjuterike Brainwave TGAM Starter Kit: Shekulli i fundit i kërkimit të neuroshkencës ka rritur shumë njohuritë tona për trurin dhe veçanërisht sinjalet elektrike të emetuara nga neuronet që lëshojnë në tru. Modelet dhe frekuencat e këtyre sinjaleve elektrike mund të maten
Testimi dhe riparimi i një bodycord Epee: 9 hapa (me fotografi)
Testimi dhe riparimi i një kordoni Epee: Në sportin e gardheve moderne, të stilit olimpik, shënimi bëhet në mënyrë elektrike. Që sinjali elektrik të udhëtojë nga arma juaj në makinën e shënimit, sinjali duhet të udhëtojë: përmes një teli në armën tuaj (përveç saberit) lart në mëngë dhe poshtë
Testimi i Rrjetit dhe Vonesës së Internetit (Vetëm Windows): 3 hapa
Testimi i Rrjetit dhe Vonesës në Internet (Vetëm Windows): Para së gjithash, vonesa është aka. vonesë Ky udhëzues do t'ju mësojë se si të kontrolloni lidhjen tuaj me rrjetin për Windows. Ju do të keni nevojë për vijën e komandës, aka. CMD, për këtë të udhëzueshme. Disclaimer: E gjeta këtë në WikiHow dhe mendova se duhet të