Mika Tuupola

Ven, Nov 4, 2011

Le matrici led sono giocattoli divertenti. Chi non amerebbe blinkenlights? L’elettronicaè difficile. L’elettronica è molto più difficile della programmazione. Ho avuto difficoltà a capire come funzionano le matrici led. Qual è il modo migliore per imparare qualcosa? Costruitene uno da soli.

Struttura della matrice di Led

In un formato matrice I LED sono disposti in righe e colonne. Puoi anchepensarli come coordinate y e x. Supponiamo di avere una matrice 4×4.Le righe sarebbero contrassegnate da A a D e colonne da 1 a 4. Ora ci puòvestire ogni LED per riga e colonna. Il led in alto a sinistra sarebbe (A, 1). Il led Bottomdown sarebbe (D, 4).

Le matrici LED sono disponibili in due versioni. Anodo Common-row (a sinistra) e common-rowcathode (a destra).

 Matrici Led

La figura sopra mostra le diverse configurazioni. La differenza tra queste due configurazioni è come hai acceso un led. Con l’anodizzazione a riga comunele sorgenti di corrente (tensione positiva) sono collegate alle righe A..D andcurrents affonda (tensione negativa, massa) alle colonne 1..4. Withcommon-fila catodo corrente lavandini sono collegati a righe A..D e currentssources alle colonne 1..4.

Per esempio. Per accendere il led inferiore (D, 4) della matrice a catodo comune, si alimenterà la tensione positiva alla colonna 4 e si collegherà la riga D a terra. Abbandono della chiarezza Userò il catodo a riga comune negli esempi per il resto di questo articolo.

Costruire una matrice di LED

Per costruire una matrice catodica 4×4 common-row avrete bisogno di 16 LED, fourresistors, alcune intestazioni e scheda di prototipazione. Ho iniziato incollando i letti alla scheda di prototipazione con colla epossidica. In questo modo è più facile avereletti splendidamente allineati. Quando si incollano i led assicurarsi che lunghi e brevile gambe siano allineate allo stesso modo.

 Incollaggio matrice led

Quando la colla è asciutta è il momento di piegare e saldare. Prima piegare tutti cathodesto lasciato il più vicino alla scheda di prototipazione possibile. Saldare tutti i catodiin ogni riga insieme. Quando i catodi sono pronti, piegare tutti gli anodi. Anodinon deve toccare i catodi. Ho usato un pezzo di tubo di plastica per aiutare a piegare gli anodi per formare un ponte sopra i catodi.

Gambe di piegatura

Ora saldare insieme tutti gli anodi in ogni riga. Saldare le intestazioni ecollegare le righe del catodo direttamente all’intestazione.

Bottom

Le righe di anodi sono collegate all’intestazione con resistori di limitazione della corrente.Il valore del resistore dipende dal LED utilizzato. Controllare il LED datasheetfor tensione diretta e corrente. LEDcalculator ti aiuterà a scoprireresistenza corretta. Matrix è ora pronto per il test.

Top

Indirizzamento Singolo LED

Collegamento di massa alla riga A e tensione positiva alla colonna 1 si accenderàil LED in alto a destra (A,1).

 Singolo led acceso

Il collegamento di massa alla riga D e la tensione positiva alla colonna 4 illumineranno il LED dal basso verso il basso (D,4).

Singolo led acceso

L’intuizione direbbe di illuminare entrambi (A,1) e (D,4) allo stesso tempo collegando solo tutti e quattro i fili. Questo non è il caso. Ci arefour LED che sono accesi. Questo perché la corrente scorre anche attraverso (A, 4) e (D,1).

Quattro led accesi

Multiplexing e persistenza della visione

Multiplexing può essere utilizzato per visualizzare modelli arbitrari con ledmatrices. Il multiplexing è talvolta chiamato anche scansione. Analizza le righe (di solito dall’alto verso il basso) e le luci necessarie led solo in una riga attime. Qualcosa come seguire:

  1. Inizia avendo tutto scollegato.
  2. Collegare tensione positiva tutte le colonne necessarie.
  3. Collegare riga a terra. Questo accende i led necessari nella riga.
  4. Disconnettere la riga e tutte le colonne.
  5. Fai gli stessi passaggi uno per uno a tutte le righe e poi inizia dall’inizio.

Fai questo lentamente e vedrai righe LED lampeggianti. Farlo davvero fastand occhio umano può vedere l’intero modello. Il fenomeno è chiamatopersistenza di visione.

Disegna un motivo

Consente di scrivere un semplice codice per disegnare un motivo sulla matrice. Nota!Anche se sto usando la scheda Arduino, non uso le librerie Arduino norIDE per lo sviluppo. Mi piace comunque lo schema di numerazione dei pin Arduino.Le funzioni pin_mode()e digital_write() funzionano esattamente allo stesso modo dei loro equivalenti Arduino.

Iniziamo impostando i pin e lo stato predefinito per loro.

uint8_t column_pins = { 2, 3, 4, 5 };uint8_t row_pins = { 11, 10, 9, 8 };static void init(void) { /* Turn all columns off by setting then low. */ for (uint8_t x=0; x<4; x++) { pin_mode(column_pins, OUTPUT); digital_write(column_pins, LOW); } /* Turn all rows off by setting then high. */ for (uint8_t y=0; y<4; y++) { pin_mode(row_pins, OUTPUT); digital_write(row_pins, HIGH); }}

Per visualizzare un modello sulla matrice usiamo la funzione draw().Bitmap viene passato come matrice bidimensionale. Il ritardo è usato solo adimostrare la persistenza della visione.

uint8_t pattern = {{1,0,0,1}, {0,1,0,0}, {0,0,1,0}, {1,0,0,1}};void draw(uint8_t buffer, uint8_t delay) { for (uint8_t row=0; row<4; ++row) { /* Connect or disconnect columns as needed. */ for (uint8_t column=0; column<4; ++column) { digital_write(column_pins, buffer); } /* Turn on whole row. */ digital_write(row_pins, LOW); _delay_ms(delay); /* Turn off whole row. */ digital_write(row_pins, HIGH); }}

Per esaminare la persistenza dell’effetto visivo disegniamo il modello condiversi ritardi.

uint8_t main(void) { init(); /* With 100ms delay eye can see updating row by row. */ for (uint8_t i=0; i<10; i++) { draw(pattern, 100); } /* With 10ms delay pattern appears but flickers. */ for (uint16_t i=0; i<100; i++) { draw(pattern, 10); } /* Withoud delay solid pattern appears. */ while (1) { draw(pattern, 1); } return 0;}

Il codice completo può essere trovato dagithub.Controllare l’uscita dal video qui sotto.

Ulteriori letture

Abilità del circuito: matrice di LED di Make Magazine. Guida di un LED con o senza resistenza di Alexander Weber. Introduzione alla guida di matrici LED (PDF) technote di Avago Technologies. Diodi emettitori di luce (LED) dal Club di elettronica.

Pubblicato in

AVR Electronics

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.