Tecnologia dei Cristalli Liquidi
Controller/Driver HD44780-HW Controller/Driver HD44780-SW
Connettore Modulo LCD Interfaccia Parallela LPT1
Applicazioni Software Progetti Hardware
Download INDICE

 Display LCD

LCD-Controller HD44780 Software

  HD44780 - Programmazione

Scelte Gestionali [15 di 65] 

           Aggiornato 27 giugno 2006
 HD44780 - Programmazione - Scelte gestionali

                     

bulletNella fase iniziale si è comunque predisposta un'interfaccia a 8 bit senza curarsi della forma del visualizzatore e della matrice del carattere, erogando 3 codici operativi uguali a 30H.

                     

bulletVediamo la sequenza finale per interfaccia a 8 bit; naturalmente in questo caso sono coinvolti tutti e 8 i bit del bus dati, da DB7 a DB0, per cui basta scrivere un solo byte per ogni istruzione (sempre con R/W=0 e RS=0):
bulletsi specifica che l'effettiva interfaccia sarà a 8 bit: non è ancora necessario specificare la forma del visualizzatore e della matrice del carattere, per cui il codice operativo può essere ancora ambiguo su tutti i 4 bit meno significativi e sarà del tipo 0011 xxxx (va bene l'OpCode 30H).
bulletfissa i dettagli dell'interfaccia a 8 bit (DL=1) ( Predisposizione funzionale ): per esempio se si desidera un visualizzatore a 1 linea (N=0) e una matrice del carattere con 5x7 pixel (F=0) il codice operativo necessario è 0011 00xx (=30H).
bulletinizializza le caratteristiche del display ( Controllo Display ): per display acceso (D=1) cursore invisibile (C=0) e a forma di trattini (B=0) il codice operativo necessario è 0000 1100 (=0CH).
bulletazzera la memoria DDRam ( Clear Display ): il codice operativo necessario è 0000 0001 (=01H).
bulletfissa il modo di gestire il display ( Modo d'accesso dei caratteri ): con autoincremento dell'indirizzo (I=1) e display bloccato (S=0) il codice operativo necessario è 0000 0110 (=06H).
               Riassumendo:
Istruzione Input Codice Operativo & Data Bus byte Descrizione
RS R/W D7 D6 D5 D4 D3 D2 D1 D0
Function Set

0

0

0 0 1 1 x x x x 30H interfaccia a 8 bit
Effettivo
Function Set

0

0


0

0

1
DL
1
N
0
F
0

x

x
30H  interfaccia a 8 bit
una linea
matrice 5x7
Display
Control

0

0


0

0

0

0

1
D
1
C
0
B
0
0CH display acceso
cursore invisibile
cursore a trattino
Display
Clear

0

0

0 0 0 0 0 0 0 1 01H azzera la DDRan
Enter Mode
Set

0

0


0

0

0

0

0

1
I
1
S
0
06H autoincremento
cursore a destra
display bloccato

                     

bulletVediamo la sequenza finale per interfaccia a 4 bit; in questo caso sono disponibili solo i 4 bit più significativi del bus dati, DB7, DB6, DB5 e DB4:
bulletsi specifica che l'effettiva interfaccia sarà a 4 bit: non è ancora necessario specificare la forma del visualizzatore e della matrice del carattere, per cui il codice operativo può essere ancora ambiguo su tutti i 4 bit meno significativi, cioè sarà del tipo 0010xxxx (va bene l'OpCode 20H).

                     

Ricorda... Da notare che l'istruzione precedente deve essere erogata con una sola OUT, come se fosse disponibile il bus al completo, a 8 bit: è proprio l'interpretazione di questa ulteriore Function Set che attiva il multiplexer interno per i prossimi comandi, così che ciascun codice (istruzione o dato a 8 bit) fornito da adesso in poi, sarà scritto in 2 tempi, prima il nibble alto e poi quello basso, sugli unici 4 bit disponibili.

                 

bulletfissa i dettagli dell'interfaccia a 4 bit (DL=0) ( Predisposizione funzionale ), cominciando da ora ad usare la metà alta del bus dati (cioè dando per scontato che i bit da BD3 a DB0 non sono più disponibili); per esempio se si desidera un visualizzatore a 1 linea (N=0) e una matrice del carattere con 5x7 pixel (F=0) il codice operativo necessario è 0010 00xx (=20H), cioè bisogna scrivere in sequenza i 2 bytes 20H (per 0010 xxxx) e  00H (per 00xx xxxx).
bulletinizializza le caratteristiche del display ( Controllo Display ): per display acceso (D=1) cursore invisibile (C=0) e a forma di trattini (B=0) il codice operativo necessario è 0000 1100 (=0CH), cioè bisogna scrivere in sequenza i 2 bytes 00H (per 0000 xxxx) e  C0H (per 1100 xxxx).
bulletazzera la memoria DDRam ( Clear Display ): il codice operativo necessario è 0000 0001 (=01H), cioè bisogna scrivere in sequenza i 2 bytes 00H (per 0000 xxxx) e  10H (per 0001 xxxx).
bulletfissa il modo di gestire il display ( Modo d'accesso dei caratteri ): con autoincremento dell'indirizzo (I=1) e display bloccato (S=0) il codice operativo necessario è 0000 0110 (=06H),  cioè bisogna scrivere in sequenza i 2 bytes 00H (per 0000 xxxx) e  60H (per 0110 xxxx).
              Riassumendo:
Istruzione Input Codice Operativo Data Bus byte Descrizione
RS R/W 7 6 5 4 3 2 1 0 D7 D6 D5 D4
Function Set

0

0

0 0 1 0 x x x x 0 0 1 0 20H interfaccia a 4 bit
Effettivo
Function Set

0

0


0

0

1
DL
0
N
0
F
0

x

x
0
0
0
0
1
x
0
x
20H
00H
 interfaccia a 4 bit
una linea
matrice 5x7
Display
Control

0

0


0

0

0

0

1
D
1
C
0
B
0
0
1
0
1
0
0
0
0
00H
C0H
display acceso
cursore invisibile
cursore a trattino
Display
Clear

0

0

0 0 0 0 0 0 0 1 0
0
0
0
0
0
0
1
00H
10H
azzera la DDRan
Enter Mode
Set

0

0


0

0

0

0

0

1
I
1
S
0
0
0
0
1
0
1
0
0
00H
60H
autoincremento
cursore a destra
display bloccato

    

Pagina Precedente Display LCD Pagina Successiva Scelte Gestionali   Torna alla Home della Sezione Lezioni - Vai al DownLoad dei files DOC Torna al Menu di "Dentro al Computer"
15 di 65
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

    

Display LCD » Tecnologia dei Cristalli Liquidi | Controller/Driver HD44780-HW | Controller/Driver HD44780-SW
Connettore Modulo LCD | Interfaccia Parallela LPT1 | Applicazioni Software | Progetti Hardware Download | INDICE
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati