LCD con caratteri a matrice
|
Altri controller di uso comune
Si incontrano vari modelli di LCD recenti che utilizzano altri
controller.
C' è da dire che, per quanto possano essere compatibili a livello di comandi
e segnali di base, tutti presentano qualche differenza, piccola o grande, con
l' HD44780. Diventa quindi necessario consultare i fogli dati,
spesso un po' complessi, per rilevare le differenze ed adeguare il driver
software, che, come impostazione, sarà quelli dell' HD44780.
Ecco una tabella con i driver più comunemente utilizzati in
moduli LCD a caratteri.
LCD
Drivers e Controllers
|
|
Descrizione
|
Costruttore
|
AX6120-21
|
80X16 LCD Segment Driver
|
AsLic
|
HD44780
|
LCD Character Display Controller
|
Hitachi
|
HD66100F
|
LCD Driver with 80-Channel Outputs
|
Hitachi
|
HD66710
|
LCD Character Display Controller
|
Hitachi
|
HD66712U
|
LCD Character Display Controller
|
Hitachi
|
HT163A
|
LCD Character Display Controller
|
Holtek
|
HT1620
|
32x4 LCD Controller
|
Holtek
|
HT1621
|
32x4 LCD Controller
|
Holtek
|
|
32x8 LCD Controller
|
Holtek
|
|
32x8 LCD Controller
|
Holtek
|
KS0066U
|
40 Segment Controller/Driver
|
SAMSUNG
|
KS0071B
|
60 Segment Controller/Driver
|
SAMSUNG
|
KS0072
|
LCD Character Display Controller
|
SAMSUNG
|
KS0073
|
60 Segment Controller/Driver
|
SAMSUNG
|
KS0075
|
100 Segment Controller/ Driver
|
SAMSUNG
|
KS0078
|
120 Segment Controller/ Driver
|
SAMSUNG
|
KS0093
|
80 Segment Controller/ Driver
|
SAMSUNG
|
KS0094
|
80 Segment Controller/Driver
|
SAMSUNG
|
KS0107
|
64 ch common driver
|
SAMSUNG
|
KS0108
|
LCD driver
|
SAMSUNG
|
KS0713
|
132 Segment Controller/ Driver
|
SAMSUNG
|
LC7985
|
LCD Character Display Controller
|
SANYO
|
NJU6408B
|
LCD Character Display Controller
|
NJR
|
NJU6468
|
LCD Character Display Controller
|
NJR
|
NJU6470
|
LCD Character Display Controller
|
NJR
|
NT7086
|
80 Segment Controller/Driver
|
Novatek
|
NT7603
|
LCD Character Display Controller
|
Novatek
|
NT7605
|
LCD Character Display Controller
|
Novatek
|
NT7606
|
16 characters x 3 lines + 80 icons controller
|
Novatek
|
NT3881D
|
LCD Character Display Controller
|
Novatek
|
PCF8566
|
24x4 segment LCD controller
|
NPX
|
PCF8576
|
40X4 segment LCD controller
|
NPX
|
PT6314
|
Dot Character VFD Controller/Driver
|
PTC
|
PT6321
|
Fluorescent Display Tube Controller Driver
|
PTC
|
PT6324
|
VFD Driver/Controller IC
|
PTC
|
RA0086
|
LCD Character Display Controller
|
RAIO
|
RA6963
|
LCD Character Display Controller
|
RAIO
|
RA8835
|
LCD Character Display Controller
|
RAIO
|
|
40 Channel Segment Driver
|
SAMSUNG
|
|
LCD Character Display Controller
|
SAMSUNG
|
S6A0070 |
LCD Character Display Controller |
SAMSUNG |
S6A0093 |
LCD Character Display Controller |
SAMSUNG |
S6B0724A |
LCD Character Display Controller |
SAMSUNG |
S6B0086
|
80 Channel Segment / Common Driver
|
SAMSUNG
|
S6B0107
|
64 Channel Common Driver
|
SAMSUNG
|
S6B0108
|
64 Channel Segment Driver
|
SAMSUNG
|
SBN0064G
|
LCD Character Display Controller
|
Avant
|
SBN0080G
|
LCD Character Display Controller
|
Avant
|
SBN1661G
|
LCD Character Display Controller
|
Avant
|
SBN6400G
|
64 common driver
|
Avant
|
SPLC780D
|
LCD Character Display Controller
|
SUNPLUS
|
SPLC100A
|
40 Channel Segment / Common Driver
|
SUNPLUS
|
ST7032
|
LCD Character Display Controller
|
SITRONIX
|
ST7036 |
LCD Character Display Controller |
SITRONIX |
ST7065C
|
40 Channel Segment / Common Driver
|
SITRONIX
|
ST7066U
|
LCD Character Display Controller
|
SITRONIX
|
ST7063
|
80 Channel Segment / Common Driver
|
SITRONIX
|
ST7066 |
LCD Character Display Controller |
SITRONIX |
ST7070
|
LCD Character Display Controller
|
SITRONIX
|
ST7093
|
26 common x 80 segment Display Controller
|
SITRONIX
|
ST7565S
|
Dot matrix LCD Controller
|
SITRONIX
|
ST7920
|
LCD chinese Character Display Controller
|
SITRONIX
|
ST7921
|
96 Channel Segment / Common Driver
|
SITRONIX
|
T6A39
|
80 Channel Segment Driver
|
TOSHIBA
|
T6A40
|
68 Common Driver
|
TOSHIBA
|
T6963C
|
LCD Character Display Controller
|
TOSHIBA
|
Samsung KS0066U, KS0070, S6A0069
Sitronix ST7066
Sunplus SPLC780D
Questi sono compatibili al 100%, anche se dai fogli dati posso risultare
piccole differenze.
Controller |
Vcc |
tcyc |
tpw |
tddr |
tpor |
HD44780U |
5 |
500 |
230 |
160 |
15 ms |
2.7 |
1000 |
450 |
360 |
40 ms |
ST7066 |
5 |
400 |
150 |
100 |
15 ms |
SED1278 |
5 |
500 |
220 |
120 |
15 ms |
KS0066U |
5 |
500 |
230 |
120 |
30 ms |
2.7 |
1000 |
450 |
360 |
|
KS0070B |
5 |
500 |
220 |
120 |
30 ms |
2.7 |
1400 |
400 |
360 |
|
SPLC780D |
5 |
500 |
230 |
120 |
15ms |
2.7 |
1000 |
450 |
360 |
|
S6A0069 |
5 |
500 |
230 |
120 |
30 ms |
2.7 |
1000 |
450 |
360 |
40 ms |
Si può notare che le caratteristiche dichiarate sono assai simili e quindi
è possibile realizzare un driver che possa pilotare tutti questi controller.
Sono altrettanto simili
- Novatek NT3881D, NT7605, NT7603
- Epson SED1278
- Sanyo LC7985NA
- NJR NJU6408B, NJU6468, NJU6470
- Holtek HT163A e i "cloni" di sorgente cinese.
In particolare, ripetiamo ancora:
Molti moduli datati, basati sulla versione HD44780A (ad
esempio Hitachi serie LMxxx) riportano sul foglio dati tempi di risposta più
lenti, ovvero gli stessi che ha HD44780U a tensione di alimentazione
ridotta.
Chi intende utilizzare questi componenti, dovrà tenere presente queste
condizioni ed aggiungere sufficienti ritardi nel driver per ottenere le
giuste temporizzazioni.
Situazione analoga si verifica anche per moduli basati su altri
controller compatibili, tanto da poter trovare dei tempi indicati
sul foglio dati del controller e altri doppi indicati sul foglio dati
del modulo.
- è possibile che un costruttore utilizzi un controller con una frequenza
di clock ed un altro impieghi lo stesso controller, ma con frequenza
diversa, oppure in versioni o selezioni diverse. Questo si riflette nelle
temporizzazioni. Questo è facilmente rilevabile dalla comparazione del
foglio dati del controller e di quelli dei moduli.
Quindi è sempre opportuno verificarle sul foglio dati
dello specifico componente che si sta usando.
- e' possibile che un costruttore "economizzi" su qualche parte
e quindi richieda per sicurezza di funzionamento, tempi di accesso
maggiori di quelli del controller impiegato
(ma sorge anche il dubbio che molti costruttori orientali facciano
solo del taglia-e-incolla con i fogli dati...)
In ogni caso, sarà opportuno consultare
il foglio dati, supponendolo comunque valido.
In mancanza di questo,
un driver
di sicurezza per il modulo dovrà considerare i tempi più lunghi,
salvo poi ridurli dove possibile con opportune prove.
In ogni caso:
- Se il modulo è alimentato a tensioni inferiori a 5 V,
obbligatoriamente saranno necessari i tempi maggiori.
|
Samsung KS0073
Pur essendo del tutto analoghi a HD44780, non sono compatibili al 100%
.
In particolare, per KS0073, abbastanza diffuso, disponendo di reset separato, è possibile che il modulo che usa questo
controller abbia un connettore diverso da quello standard.
Inoltre gli indirizzi di inizio line della DDRAM sono differenti da quelli di
HD44780 e ci sono alcune funzioni addizionali.
Ad esempio KS0073 ha la possibilità di comunicare in seriale SPI oltre
che su bus parallelo.
Anche i tempi non sono identici e per l' inizializzazione software il
costruttore consiglia procedure un poco differenti, anche se la struttura dei
comandi di base è analoga a HD44780.
Il principio di funzionamento generale è altrettanto analogo, per cui la scrittura di un driver con le modifiche necessarie è
abbastanza semplice.
Sitronix
ST7036U
Un chip molto interessante è Sitronix
ST7036U (o analoghi, come ST7032), utilizzato da Electronic
Assembly per i moduli DOG.
I vantaggi di questo controller sono sensibili.
In primo luogo dispone di 3 o 4 modi di interfaccia:
-
4 bit parallelo compatibile HD44780
-
8 bit parallelo compatibile HD44780
-
seriale clock + dato (tipo SPI)
-
I2C
che sono impostabili via hardware, per cui uno stesso modulo
può operare in vari modi, senza l' aggiunta di componenti
esterni.
Il suo set di istruzioni è compatibile con HD44780.
Con un accesso parallelo il driver software può essere analogo, tenendo
presente che ST7036U dispone di numerose
funzioni extra, come caratteri su due linee, caratteri inversi, schermo a
specchio o rovesciato, ecc.; queste non interferiscono con la compatibilità
HD44780, ma, per essere sfruttate, richiedono l' implementazione dei
comandi speciali nel driver di base. In sostanza, però, è possibile
scrivere un driver comune ai due controller con poche modifiche..
Dispone inoltre di un pin di reset separato, che evita l'
inizializzazione software (ma richiede un I/O in più)
Inoltre può funzionare tra 2 e 5.5 V.
Cosa molto interessante, il contrasto viene regolato da
software e non richiede più il classico trimmer. In particolare i moduli
DOG di EA dispongono di un charge pump per cui la Vo è prodotta
direttamente dal modulo.
Altri controller
Le varie decine di controller per LCD, sopratutto con l'
avvento dei pannelli grafici e a colori, rende difficile fare una casistica
dettagliata. Per cui, per i vari S6A0074, S6A0075, S6A0079,
NJU6623, NJU6624A, NJU6428, NT7606, MSM6562B, UPD16681, ML9040/41/42,
SED1200F, KS0078, KS0093, NJU6450, HD66730, SPLC501C, KS0713,
ecc, anche se la struttura dell' interfaccia e il principio di funzionamento
sono analoghi a quelli finora vista, occorre certamente fare riferimento ai
fogli dati per comprenderne le differenze.
Anche perchè alcuni hanno sensibili differenze, come l' assenza di un character generator interno
(e
quindi i caratteri vanno preparati esternamente come elementi della grafica),
oppure sono dedicati a display con 1 linea sola o ad applicazioni OEM con
particolari configurazioni di caratteri, o, anche,
della stessa sigla base ne esistono varie versioni con caratteristiche diverse.
Fortunatamente alcuni di questi componenti non sono comuni sul mercato e
quindi può capitare di non avere mai occasione di utilizzarli.
E' da supporre che quanto più le funzioni si discostano da
quelle puramente alfanumeriche di HD44780, tanto maggiori saranno le
differenze di funzionamento. Quindi non c'è altro da fare che verificare i
data sheets e ricercare sul sito del produttore o nel WEB qualche supporto
software o application dalla quale trarre spunto per la creazione del driver
adatto.
Nei link si trovano riferimenti a liste di controller e ai relativi fogli
dati.
|