Un afficheur LCD
Description
Nombre d'afficheurs LCD possèdent la même interface de contrôle et du même jeu d'instructions. Le contrôleur KS066U permet la gestion des cristaux liquides.

Afficheur LCD 2x16 caractères

Vue de dos
Signaux de l'afficheur
| PIN NO | Symbol | Function | |
|---|---|---|---|
| 1 | VSS |
GND |
|
|
2 |
VDD |
+5V |
|
|
3 |
V0 |
Contrast adjustment |
|
|
4 |
RS |
H/L Register select signal |
|
|
5 |
R/W |
H/L Read/Write signal |
|
|
6 |
E |
H/L Enable signal |
|
|
7 |
DB0 |
H/L Data bus line |
|
|
8 |
DB1 |
H/L Data bus line |
|
|
9 |
DB2 |
H/L Data bus line |
|
|
10 |
DB3 |
H/L Data bus line |
|
|
11 |
DB4 |
H/L Data bus line |
|
|
12 |
DB5 |
H/L Data bus line |
|
|
13 |
DB6 |
H/L Data bus line |
|
|
14 |
DB7 |
H/L Data bus line |
|
|
15 |
A |
+4.2v pour le rétroEclairage |
|
|
16 |
K |
0v pour rétroEclairage |
|
Les signaux de commandes (Bit 4 à 6) permettent le contrôle des données D0 à D7 (Bit 7 à 13).
Signaux de commande
Les signaux de commandes (Rs R/W, E) permettent de définir si la donnée présente est une commande ou une donnée.
Le signal Rs permet d'effectuer la distinction Commande/Donnée.
Le signal R/W (Read/Write) permet de définir si la donnée est lu ou écrite.
Le signal E (Enabled) permet de définir si la donnée est valide.
Les signaux D0-D7 définissent une donnée sur 8 bits.
Envoi d'un commande et d'une donnée
Séquence d'initialisation
Mise sous tension![]()
Attente de 15ms![]()
Envoi de la commande 0x30![]()
Attente de 4,1ms![]()
Envoi de la commande 0x30![]()
Attente de 100µs![]()
Envoi de la commande 0x30![]()
Configuration du mode de commande![]()
Configuration du mode d'affichage![]()
Configuration du mode d'entrée des données
Tableau des commandes
| Commandes | RS | R/W | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
Description |
| Mode de commande | 0 | 0 | 0 | 0 | 1 | DL | N | F | x | x | DL=0 : module commandé sous 4 bits. DL=1 : module commandé sous 8 bits. N=1 : pour un afficheur 2 lignes ou plus. N=0 : pour un afficheur 1 ligne. F=1 : pour une fonte 5x11. F=0 : pour une fonte 5x8. Temps d'exécution : 40us. |
| Mode d'affichage | 0 | 0 | 0 | 0 | 0 | 0 | 1 | D | C | B | D=1 : initialise l'afficheur. C=1 : active le curseur. (C=0 le curseur n'apparaît pas). B=1 : efface le caractère à la position du curseur. Temps d'exécution : 40us. |
| Mode d'entrée des données | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | I/D | S | S=1 : à chaque entrée de données, le curseur reste fixe et l'affichage se décale (scrolling). S=0 : à chaque entrée de données, le curseur se décale et l'affichage reste fixe. I/D=1 : le décalage se fait vers la droite. I/D=0 : le décalage se fait vers la gauche. Temps d'exécution : 40us. |
| Effacement de l'affichage | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | Efface la totalité de la mémoire d'affichage. Elle ramène le curseur en haut à gauche (pour un afficheur multi-lignes). Temps d'exécution : 1,64 ms. |
| Retour du curseur | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | x | Retour du curseur à l'origine, sans effacer la RAM. Temps d'exécution : 1,64ms. |
| Scrolling du curseur | 0 | 0 | 0 | 0 | 0 | 1 | S/C | R/L | x | x | Déplace le curseur ou scroll l'affichage sans changer la RAM. S/C=1 : scroll l'affichage. S/C=0 : déplace le curseur. R/L=1 : à droite. R/L=0 : à gauche. Temps d'exécution : 40us. |
| Saut de lignes ou segments | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Permet d'accéder à la ligne suivante pour un afficheur multi-lignes. Permet de sélectionner le segment de x caractères pour certains modèles d'afficheurs 1 ligne. |
| Adressage de la CG RAM |
0 | 0 | 0 | 1 | A | A | A | A | A | A | 1AAAAAA = Spécifie l'adresse pointant sur le Character Generator RAM (CGRAM). Celle-ci occupe un emplacement différent de la DD RAM et contient les masques pour les caractères redéfinissables par l'utilisateur. Après cette commande, toute donnée lue ou écrite proviendra de la CG RAM. L'adressage de la CG RAM se fait sur 6 bits (AAAAAA). Temps d'exécution : 40us. |
| Adressage de la DD RAM |
0 | 0 | 1 | A | A | A | A | A | A | A | 1AAAAAAA = Spécifie l'adresse de la DD RAM. Après cette commande, toute donnée lue ou écrite proviendra de la DD RAM. L'adressage de la DD RAM se fait sur 7 bits (AAAAAAA). Temps d'exécution : 40us. |
| Ecriture d'une donnée | 1 | 0 | D | D | D | D | D | D | D | D | La donnée DDDDDDDD est écrite dans la DD ou CG RAM. Tout dépend de la dernière commande 01AAAAAA ou 1AAAAAAA en date. Après l'exécution, le pointeur sur la DD ou CG RAM est incrémenté d'une unité. Temps d'exécution : 40us pour la DD RAM et 120us pour la CG RAM. DDDDDDDD : donnée sur 8 bits. |
| Lecture du busy flag | 0 | 1 | B | A | A | A | A | A | A | A | Lit l'état du busy flag ainsi que la valeur du pointeur sur la DD ou CG RAM. Temps d'exécution : 0us. B=1 : module occupé. B = 0 : module près à recevoir une nouvelle donnée / commande. AAAAAAA adresse lue sur 7 bits. |
| Lecture d'une donnée | 1 | 1 | D | D | D | D | D | D | D | D | DDDDDDDD lit la donnée dans la DD ou la CG RAM (même remarque que précédemment pour l'écriture d'une donnée). |









