Cuprins:

Șofer DIY LED 4xN: 6 pași
Șofer DIY LED 4xN: 6 pași

Video: Șofer DIY LED 4xN: 6 pași

Video: Șofer DIY LED 4xN: 6 pași
Video: #DIY modular sofa how to make a modern sofa 2024, Iulie
Anonim
Driver LED 4xN DIY
Driver LED 4xN DIY

Afișajele LED sunt utilizate pe scară largă în sisteme care variază de la ceasuri digitale, contoare, temporizatoare, contoare electronice, calculatoare de bază și alte dispozitive electronice capabile să afișeze informații numerice. Figura 1 prezintă un exemplu de afișaj LED cu 7 segmente care poate afișa cifre și caractere zecimale. Deoarece fiecare segment de pe afișajul LED poate fi controlat individual, acest control poate necesita o mulțime de semnale, în special pentru mai multe cifre. Acest instructabil descrie o implementare bazată pe GreenPAK ™ pentru a conduce mai multe cifre cu o interfață I2C cu 2 fire de la un MCU.

Mai jos am descris pașii necesari pentru a înțelege modul în care cipul GreenPAK a fost programat pentru a crea driverul LED 4xN. Cu toate acestea, dacă doriți doar să obțineți rezultatul programării, descărcați software-ul GreenPAK pentru a vizualiza fișierul de proiectare GreenPAK deja finalizat. Conectați kitul de dezvoltare GreenPAK la computer și apăsați programul pentru a crea IC personalizat pentru driverul LED 4xN.

Pasul 1: fundal

fundal
fundal
fundal
fundal
fundal
fundal

Afișajele cu LED-uri sunt împărțite în două categorii: Anod comun și Catod comun. Într-o configurație comună a anodului, bornele anodului sunt scurtcircuitate împreună, așa cum se arată în Figura 2. Pentru a porni LED-ul, terminalul comun al anodului este conectat la tensiunea de alimentare VDD a sistemului, iar bornele catodului sunt conectate la masă prin rezistențe de limitare a curentului.

O configurație comună a catodului este similară cu o configurație comună a anodului, cu excepția cazului în care terminalele catodului sunt scurtcircuitate împreună, așa cum se arată în Figura 3. Pentru a porni afișajul LED cu catod comun, terminalele comune ale catodului sunt conectate la masă și terminalele anodului sunt conectate la sistem. tensiunea de alimentare VDD prin rezistențe de limitare a curentului.

Un afișaj LED multiplexat cu N cifre poate fi obținut concatenând N afișaje LED cu 7 segmente individuale. Figura 4 prezintă o instanță a unui afișaj LED 4x7 obținut prin combinarea a 4 afișaje individuale de 7 segmente într-o configurație anodică comună.

După cum se vede în Figura 4, fiecare cifră are un pin / fundal anodic comun care poate fi utilizat pentru a activa individual fiecare cifră. Pinii catodului pentru fiecare segment (A, B, … G, DP) ar trebui să fie scurtcircuitați împreună la exterior. Pentru a configura acest afișaj LED 4x7, utilizatorul necesită doar 12 pini (4 pini comuni pentru fiecare cifră și pini cu 8 segmente) pentru a controla toate cele 32 de segmente ale afișajului 4x7 multiplexat.

Designul GreenPAK, detaliat mai jos, arată cum se generează semnalele de control pentru acest afișaj LED. Acest design poate fi extins pentru a controla până la 4 cifre și 16 segmente. Vă rugăm să consultați secțiunea Referințe pentru un link către fișierele de proiectare GreenPAK disponibile pe site-ul web Dialog.

Pasul 2: Proiectare GreenPAK

Proiectare GreenPAK
Proiectare GreenPAK

Designul GreenPAK afișat în Figura 5 include atât generarea semnalului de segment, cât și cea a cifrelor într-un singur design. Semnalele de segment sunt generate din ASM și semnalele de selecție a cifrelor sunt create din lanțul DFF. Semnalele de segment sunt conectate la pinii de segment prin rezistențe de limitare a curentului, dar semnalele de selecție a cifrelor sunt conectate la pinii comuni ai afișajului.

Pasul 3: Generarea semnalului digital

Generarea semnalului cifrat
Generarea semnalului cifrat

După cum este descris în secțiunea 4, fiecare cifră de pe un afișaj multiplexat are un backplane individual. În GreenPAK, semnalele pentru fiecare cifră sunt generate de lanțul DFF intern condus de oscilator.

Aceste semnale conduc pinii comuni ai afișajului. Figura 6 afișează semnalele de selecție a cifrelor.

Canalul 1 (galben) - Pinul 6 (cifra 1)

Canalul 2 (verde) - Pinul 3 (cifra 2)

Canalul 3 (albastru) - Pinul 4 (cifra 3)

Canalul 4 (Magenta) - Pinul 5 (cifra 4)

Pasul 4: Segmentați generarea semnalului

GreenPAK ASM generează modele diferite pentru a conduce semnalele de segment. Un contor de 7,5 ms cicluri prin stările ASM. Deoarece ASM este sensibil la nivel, acest design utilizează un sistem de control care evită posibilitatea comutării rapide prin mai multe stări în perioada înaltă a ceasului de 7,5 ms. Această implementare specifică se bazează pe stări ASM consecutive controlate de polaritățile ceasului inversat. Atât semnalele de segment, cât și cele de cifre sunt generate de același oscilator intern de 25 kHz.

Pasul 5: Configurare ASM

Configurare ASM
Configurare ASM
Configurare ASM
Configurare ASM
Configurare ASM
Configurare ASM

Figura 7 descrie diagrama de stare a ASM. Statul 0 trece automat la statul 1. Un comutator similar are loc de la statul 2 la statul 3, statul 4 la statul 5 și statul 6 la statul 7. Datele din statul 0, statul 2, statul 4 și statul 6 sunt blocate instantaneu folosind DFF 1, DFF 2 și DFF 7 așa cum se arată în Figura 5, înainte ca ASM să treacă la următoarea stare. Aceste DFF-uri blochează datele din stările pare ale ASM, ceea ce permite utilizatorului să controleze un afișaj extins 4x11 / 4xN (N până la 16 segmente) utilizând ASM-ul GreenPAK.

Fiecare cifră de pe un afișaj 4xN este controlată de două stări ale ASM. State 0/1, State 2/3, State 4/5 și State 6/7 respectiv controlează cifra 1, cifra 2, cifra 3 și cifra 4. Tabelul 1 descrie stările ASM împreună cu adresele RAM respective pentru a controla fiecare cifră.

Fiecare stare a RAM ASM stochează un octet de date. Deci, pentru a configura un afișaj 4x7, trei segmente ale cifrei 1 sunt controlate de starea 0 a ASM și cinci segmente ale cifrei 1 sunt controlate de starea 1 a ASM. Ca rezultat, toate segmentele fiecărei cifre de pe afișajul LED sunt obținute prin concatenarea segmentelor din cele două stări corespunzătoare. Tabelul 2 descrie locația fiecărui segment din cifra 1 în memoria RAM ASM. Într-un mod similar, statul 2 până la statul 7 al ASM include locațiile segmentelor de la cifra 2 la cifra 4.

După cum se vede în tabelul 2, segmentele OUT 3 la OUT 7 ale stării 0 și OUT 0 la segmentele OUT 2 ale stării 1 sunt neutilizate. Designul GreenPAK din Figura 5 poate controla un afișaj 4x11 configurând segmentele OUT 0 la OUT 2 ale tuturor stărilor impare ale ASM. Acest design poate fi extins în continuare pentru a controla un afișaj extins 4xN (N până la 16 segmente) utilizând mai multe celule logice DFF și GPIO.

Pasul 6: Testare

Testarea
Testarea
Testarea
Testarea
Testarea
Testarea

Figura 8 prezintă schema de testare utilizată pentru a afișa numerele zecimale pe afișajul cu LED 4x7-segment. Un Arduino Uno este utilizat pentru comunicarea I2C cu registrele RAM ASM ale GreenPAK. Pentru mai multe informații despre comunicarea I2C, vă rugăm să consultați [6]. Pinii anodici comuni ai afișajului sunt conectați la GPIO-urile de selecție a cifrelor. Pinii segmentului sunt conectați la ASM prin rezistențe de limitare a curentului. Dimensiunea rezistorului care limitează curentul este invers proporțională cu luminozitatea afișajului LED. Utilizatorul poate selecta puterea rezistențelor de limitare a curentului în funcție de curentul mediu maxim al GreenPAK GPIO și de curentul DC maxim al afișajului LED.

Tabelul 3 descrie numerele zecimale de la 0 la 9 atât în format binar cât și în format hexazecimal, care trebuie afișate pe afișajul 4x7. 0 indică faptul că un segment este PORNIT și 1 indică faptul că segmentul este OPRIT. Așa cum se arată în Tabelul 3, sunt necesari doi octeți pentru a afișa un număr pe afișaj. Corelând Tabelul 1, Tabelul 2 și Tabelul 3, utilizatorul poate modifica registrele RAM ale ASM pentru a afișa diferite numere pe ecran.

Tabelul 4 descrie structura de comandă I2C pentru cifra 1 de pe afișajul LED 4x7. Comenzile I2C necesită un bit de pornire, octet de control, adresă de cuvânt, octet de date și bit de oprire. Comenzi similare I2C pot fi scrise pentru cifra 2, cifra 3 și cifra 4.

De exemplu, pentru a scrie 1234 pe afișajul LED 4x7, sunt scrise următoarele comenzi I2C.

[0x50 0xD0 0xF9 0xFF]

[0x50 0xD2 0xFC 0xA7]

[0x50 0xD4 0xF8 0xB7]

[0x50 0xD6 0xF9 0x9F]

Scriind în mod repetat toți cei opt octeți ai ASM, utilizatorul poate modifica modelul afișat. De exemplu, un cod de contor este inclus în fișierul ZIP al notei de aplicație de pe site-ul web Dialog.

Concluzii

Soluția GreenPAK descrisă în acest Instructable permite utilizatorului să reducă la minimum costurile, numărul de componente, spațiul plăcii și consumul de energie.

De cele mai multe ori MCU-urile au un număr limitat de GPIO-uri, astfel încât descărcarea LED-urilor care conduc GPIO-uri către un IC GreenPAK mic și ieftin permite utilizatorului să salveze IO-uri pentru funcționalități suplimentare.

Mai mult, IC-urile GreenPAK sunt ușor de testat. Memoria RAM ASM poate fi modificată printr-un clic pe câteva butoane din software-ul GreenPAK Designer, care indică modificări de design flexibile. Prin configurarea ASM așa cum este descris în acest instructabil, utilizatorul poate controla patru afișaje LED cu segment N cu câte 16 segmente fiecare.

Recomandat: