I moduli MAX7219 8x32 4 in 1 Dot Matrix LED display sono molto adatti a questo scopo, poiché possono essere facilmente collegati in serie (la cosiddetta daisy chain). In questo blogpost mostro un esempio con tre display. Ma, con una minima modifica, allo sketch si può anche usare il five-pack.
Con lo sketch di esempio della libreria MD_MAX72xx.h che ho adattato, avete la possibilità di far funzionare il Micro Controller con un testo preimpostato su un power bank, o collegato al computer, avete la possibilità di cambiare il testo nel monitor seriale in qualsiasi momento.
Materiale necessario
1 |
|
alternativa |
|
alternativa |
qualsiasi micro controllore |
|
Half-Breadboard, cavo, Poti 10kOhm |
3 - 5 |
Per collegare i tre o cinque moduli di visualizzazione, non abbiamo nemmeno bisogno di un saldatore. Cinque contatti della spina sono già saldati sul lato d'ingresso. Sul primo modulo colleghiamo VCC a 5V, GND a GND, DIN al pin digitale D11=MOSI, CS al pin digitale D10 e CLK al pin digitale D13=SCK. Quindi abbiamo a che fare con l'interfaccia SPI, ma come al solito con display senza MISO.
Per realizzare la daisy chain, rimuoviamo con cura l'elemento LED all'uscita del modulo di visualizzazione. Ora possiamo inserire i cinque pin di ingresso del modulo successivo nei contatti ora esposti dell'uscita e piegarli con attenzione fino a quando entrambi i moduli di visualizzazione sono in un piano.
Poi possiamo inserire di nuovo l'elemento LED nei contatti della spina 2x8. Ripetiamo poi questa procedura per gli altri moduli di visualizzazione. Nella mia disposizione sperimentale, avevo un contatto sicuro in ogni caso ed ho quindi rinunciato alla saldatura. Tuttavia, tutti sono liberi di collegare i moduli in modo permanente e di prendere il saldatore.
Per quanto riguarda il software, si consiglia di utilizzare una libreria di programmi esistente per questo tipo di visualizzazione. Ho inserito MD_MAX nella finestra di ricerca del gestore delle librerie e poi ho installato la libreria MD_MAX72XX di majicDesigns. Questo viene con molti esempi, due dei quali useremo.
A causa del gran numero di display supportati, si dovrebbe prima scoprire quale tipo si ha e si deve definire nello sketch. Per fare questo, carichiamo prima MD_MAX72xx_Dynamic_HW dagli sketch di esempio. Cambio solo la linea 16 dal numero 4 al mio numero di elementi individuali, quindi 3 moduli di visualizzazione con 4 display a matrice ciascuno risulta 12:
Ora molti caratteri criptici vengono visualizzati alternativamente fino a quando si riesce finalmente a leggere chiaramente FC16.
Quindi, il mio display è di tipo FC16_HW. Ho poi bisogno di inserire questa stringa negli schizzi di esempio. Voglio usare lo sketch MD_MAX72xx_Message_Serial per questo post. Per fare questo, ho bisogno di cambiare la linea 22 per la mia visualizzazione:
cancellare:
impostare:
Nella prossima linea 23 cambio
in
Se usi un microcontrollore diverso, potresti dover regolare i numeri per CLK_PIN, Data_PIN e CS_PIN nelle linee 25 - 27.
Coloro che vogliono usare il Micro Controller con testo immutabile su un Power Bank inseriscono il loro testo nella linea 45 al posto di "Hello! Per i miei auguri di Natale in diverse lingue - Merry Christmas Feliz Navidad Glaedelig Jul Joyeux Noel Buon Natale Vrolijk Kerstfeest - ho cambiato la variabile BUF_SIZE a 150 nella linea precedente. Questo valore è anche raccomandato se volete inserire un testo più lungo nel monitor seriale.
Un'altra variabile interessante da impostare è la velocità dell'indicatore. Qui si può scegliere un valore preimpostato - si definisce poi nella linea 14
e nella linea 38, per esempio, il default
// default in milliseconds, when #define USE_POT_CONTROL 0
Quando si usa un potenziometro all'ingresso analogico A5, impostare la linea 14 su
Poi la variabile SCROLL_DELAY viene impostata su un valore compreso tra 25 e 250 con la funzione di mappa.
Non c'è altro da dire. Si ottiene un vero "eye-catcher" in vetrina con poco sforzo. Divertitevi a costruire il vostro.
2 commenti
Andreas Wolter
@Mani:
es stimmt, hier gibt es kein Schaltbild. Es ist allerdings auch gar nicht zwingend notwendig. Im Text steht, wie die Kontakte verbunden werden:
Display → Mikrocontroller:
VCC an 5V
GND an GND
DIN an den digitalen Pin D11=MOSI
CS an den digitalen Pin D10
CLK an den digitalen Pin D13=SCK
Dann sollte es schon funktionieren.
Probieren Sie es bitte einmal aus.
Grüße,
Andreas Wolter
AZ-Delivery Blog
Mani
Habe alle Teile hier zu Haus.Würde die Laufschrift gerne bauen, allein der Anschlußplan fehlt mir!