Verificare un display LCD a
caratteri
|
Avendo per le mani un display LCD a caratteri (LCD dot matrix display) ci
si può trovare ad aver necessità di verificare se l' oggetto funziona oppure
no.
Il problema è che questo genere di periferiche di per se, una volta
applicata l' alimentazione, non fa nulla; il controller bordo è predisposto
per rispondere a comandi che gli arrivano dal bus e quindi necessita di un
collegamento con un master sul quale far girare un programma di driver e di
test.
E, quando non si è sicuri del firmware, un test che determini se almeno l'
hardware funziona, è molto utile.
In effetti, non è proprio vero che il display non faccia nulla,
perchè all' arrivo della tensione, se questa è stata fornita nelle
temporizzazioni richieste dal foglio dati, il controller , che è assimilabile
ad un microcontroller embedded dedicato, effettua un reset hardware (POR=
Power On Reset - reset all' arrivo della tensione di alimentazione).
Questa funzione comprende alcune azioni:
-
predispone i registri interni per ricevere i comandi
dal bus
-
azzera la memoria DDRAM, riempiendola con 20h (ASCII
spazio)
-
imposta il funzionamento per una interfaccia a 8 bit e
display di una linea
-
mantiene non visualizzato (off) il display e il
cursore
A noi interessa l' effetto dei punti 2 e 3, perchè questo può essere reso
visibile anche senza disporre di un sistema che comandi il display.
|
Colleghiamo al display solamente:
- pin 1 : Vss - massa
- pin 2 : Vcc +
- pin 3 : Vo - contrasto
Occorre ovviamente anche accendere la retro illuminazione, se il
display la prevede.
Però se ne può anche fare a meno: l'immagine risulterà debole o
molto debole a seconda del tipo di display, ma sarà comunque visibile
una differenza tra il display spento e le aree delle matrici attivate.
Tutti i rimanenti pin dell' interfaccia ora non interessano. |
Non appena diamo tensione, in un tempo di pochi milli secondi il controller
ha eseguito il reset hardware: il risultato è che le caselle della linea 1
diventano visibili, in quanto tutti i punti delle relative matrici sono
attivati, cioè circolano dei segnali di riga e colonna, anche se non viene
visualizzato nulla.
Regolando il contrasto, però, si potranno rendere visibili questi punti come scuri su fondo chiaro (per i display non retro illuminati) o
chiari su fondo scuro (per quelli retro illuminati).
Questo indica che il controller sta facendo il suo lavoro di refresh del
display.
|
Qui vediamo il risultato di un POR eseguito correttamente su un
display 2 linee da 16 caratteri con retro illuminazione bianca su
fondo blu.
Il controller ha inizializzato la prima linea, che, regolando il
contrasto, viene resa visibile.solo la prima sarà visibile,
La seconda linea fisica, che fa parte della memoria della seconda
linea DDRAM, non è visibile in
quanto il reset hardware inizializza il controller per la
gestione di una sola linea. |
Eccedendo con il contrasto, si potrà arrivare a rendere
visibile anche la seconda linea, sia pure in modo meno marcato. |
|
Qui lo stesso effetto su un display da 4 linee da 20 caratteri.
La prima linea fisica e la terza linea fisica corrispondono alla
porzione di memoria che il controller considera come prima linea di
memoria dati.
Le altre due linee di caratteri non sono attivate in quanto
appartengono a quella che per il controller è la seconda linea di
DDRAM, non inizializzata nel reset hardware. |
La visualizzazione di questi pixel attivati indica che il controller ha
rilevato correttamente l' arrivo della tensione di alimentazione ed ha
effettuato il reset hardware. Il display ha ottime probabilità di essere
perfettamente funzionante.
Per un modulo a più linee, applicando i comandi di inizializzazione, dopo
l' invio di quello relativo al numero di linee (con DL=1), si vedranno
apparire anche le celle delle linee pari.
Se, appena applicata l' alimentazione, non si vede nulla, basta regolare la tensione di contrasto e, ad un certo
punto, i rettangoli scuri (o chiari, se il display è retro illuminato)
appariranno visibili.
Se, fatto questo, proprio non si vede nulla e siete sicuri della correttezza dei
collegamenti di alimentazione, contrasto ed eventuale retro illuminazione e che il display sia alimentato alla sua tensione
nominale, ci sono due possibilità:
- il display richiede una tensione Vo negativa
- il display è difettoso
Se, dopo aver provato ad applicare alla Vo una tensione negativa,
attraverso una resistenza da 1-2 k per sicurezza, il display non visualizza
nulla, bisogna concludere che è guasto.
Se il display, invece, visualizza le caselle con una Vo negativa, probabilmente
si tratti di un modello a temperatura estesa.
Un cenno va fatto ai display con alimentazione inferiore a 5V, ad esempio
3.3V.
In queste condizioni è molto probabile che la Vo debba essere negativa,
anche se il display è per range di temperatura ordinaria. Va anche ricordato
che abbastanza pochi display di facile reperibilità sul mercato hanno montata
la
versione di controller che funziona al di sotto dei 5V. Prima di provare il
vostro display a 3V, verificate dal foglio dati che questo sia
possibile.
In ogni caso la prova con una alimentazione a 5V è quella ideale.
Fanno eccezione rari display che sono previsti per il solo funzionamento a
3.3V circa. Si tratta di moduli non comuni e per i quali una occhiata al
foglio dati è indispensabile.
Una volta verificato che il controller funziona, si potrà collegare il
resto dei contatti e, caricato sul microcontroller un adeguato driver, si
potrà provare a visualizzare caratteri.
Da notare che la posizione del cursore del potenziometro di regolazione del
contrasto dovrà essere spostata rispetto a quella che permette di
visualizzare le celle attive.
La migliore visualizzazione (e il più ampio angolo di visualizzazione) si
ottiene con il contrasto regolato al limite della sparizione delle caselle
attive, il che lascia i caratteri con il contrasto più netto.
Ricordare che la tensione di contrasto è funzione della temperatura ambiente:
un display regolato per il migliore contrasto a 20 °C probabilmente
richiederà un aggiustamento se si lavora a 0 °C o a 35 °C per avere la
visione migliore .
Avvertenza: questo test è perfettamente funzionale per i dot matrix. I
display grafici potranno avere risposte differenti al reset hardware.
|