HD44780
L'HD44780 è un ASIC prodotto da Hitachi, in grado di controllare display LCD capaci di visualizzare solo caratteri. Vengono commercializzati display completi di controllore di varie dimensioni a partire da 8x1, costituito da una riga di 8 caratteri, fino a dimensioni più grandi tra cui 8x2, 16x2, 20x2, 16x4, 20x4, ecc.
Per la sua diffusione l'HD44780 è considerato ormai uno standard de facto per il controllo di display LCD. Esso infatti viene usato soprattutto in ambito embedded per realizzare display di apparecchi elettrici e hobbystico a causa della larga versatilità e facilità di interfacciamento.
Nonostante spesso si faccia riferimento a display LCD, un controller compatibile con l'HD44780 può essere montato anche in display OLED o VFD.
Disposizione pin
modificaNumero del pin | Funzione del pin |
---|---|
1 | Vss (Massa) |
2 | Vcc (Genericamente 5V) |
3 | Vee (Controllo contrasto, da 2V a -3V secondo i tipi) |
4 | R/S (0 per selezionare l'invio di un comando, 1 per i dati) |
5 | R/W (0 per selezionare la scrittura di dati o comandi, 1 per la lettura dei dati o dello stato) |
6 | E (inizia il ciclo di scrittura o lettura, secondo R/S e R/W) |
7 | D0 (Bus dati) |
8 | D1 (Bus dati) |
9 | D2 (Bus dati) |
10 | D3 (Bus dati) |
11 | D4 (Bus dati) |
12 | D5 (Bus dati) |
13 | D6 (Bus dati) |
14 | D7 (Bus dati) |
15 | A (Vcc retroilluminazione, se presente) |
16 | K (Vss retroilluminazione, se presente) |
Notare che questa è la disposizione standard, ma la posizione dei pin, come anche altri valori, possono cambiare di modello in modello. I livelli logici 0 ed 1 utilizzati sono TTL compatibili.
Modalità di trasferimento
modificaL'HD44780 supporta il trasferimento parallelo sia di 8 bit (quindi l'intero comando), che di 4 bit (nibble).
Esempio: se è stata selezionata la modalità di trasferimento ad otto bit, il comando 10000001 verrà inviato per intero, quindi DB7 sarà pari a 1, DB6 uguale a 0, DB0 uguale a 1 e così via.
Se è selezionata la modalità di trasferimento a 4 bit, saranno utilizzati solo i pin da DB7 a DB4, verranno quindi effettuati due trasferimenti, prima verranno inviati i primi quattro bit del dato (1000), poi gli ultimi (0001).
Comandi supportati
modificaTutti i comandi inviati al 44780 devono essere trasferiti con il pin R\S a zero.
I comandi possono essere di vario tipo:
- Inizializzazione: sono comandi genericamente eseguiti una sola volta, che indicano la modalità di visualizzazione, il verso di scorrimento del cursore, determinano se il cursore dovrà lampeggiare, la modalità di trasferimento (4/8 bit), la dimensione dei caratteri ecc.
- Posizionamento: indicano al controller dove scrivere il prossimo carattere, genericamente vengono usati per cambiare riga del display.
- Definizione di nuovi caratteri: l'HD44780 prevede la possibilità di definire fino a 8 caratteri personalizzati.
Per ulteriori informazioni sui comandi è consigliata la lettura del datasheet del display a cui si è interessati.
Scrittura di un carattere
modificaPer la scrittura di un carattere è necessario:
- Accertarsi che il cursore si trovi nel punto in cui si desidera stampare il carattere;
- impostare a 1 il pin R\S; a 0 il pin R\W;
- inviare il codice ASCII del carattere
- impostare a 1 il pin E per minimo 450 nanosecondi e riportarlo a 0
Altri progetti
modifica- Wikimedia Commons contiene immagini o altri file su HD44780
Collegamenti esterni
modifica- (EN) Datasheet dell'Hitachi HD44780U (LCD-II) (PDF), su lcd-linux.sourceforge.net.