78LS138 74LS139 74LS153 74LS157 74LS158
7846 74LS47 74LS48 74LS49 9368 4511
74LS240 74LS241 74LS244 74LS373 74LS374
MC1488 MC1489 MAX232 UART16550 ADC0804
FND500/FND507 HD44780 Download INDICE

 Data Sheet

Sezione Data Sheet

  COMPONENTI PROGRAMMABILI

HD44780 7/9 [64 di 87] 

 

 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 0010 xxxx (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  01H (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
01H
azzera la DDRan
Enter Mode
Set

0

0


0

0

0

0

0

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

    

Pagina Precedente Data Sheet   [64 di 87] Pagina Successiva Programmabili - HD44780 7/9 Torna alla Home della Sezione Lezioni - Vai al DownLoad dei files DOC Torna al Menu di "Dentro al Computer"
Programmabili - HD44780
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87

    

DataSheet » 78LS138 | 74LS139 | 74LS153 | 74LS157 | 74LS158 | 74LS240 | 74LS241 | 74LS244
74LS373 | 74LS374 | 7446 | 74LS47 | 74LS48 | 74LS49 | 9368 | 4511 | FND500/FND507
74LS373 | 74LS374 | ADC0804 | HD44780 | MC1488 | MC1489 | MAX232 | UART16550
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