ESTI Electronique
Cours : Mise en œuvre de l’afficheur LCD
Page 1 /6
Mise en œuvre de l’afficheur LCD
Documents ressource : documentation de lafficheur AMC-1602A, page 18 de la
documentation du circuit intégré KS0066U.
1. Caractéristiques de l’afficheur :
Type d’affichage (signification de LCD) : à cristaux liquides.
Format de l’affichage : 2 lignes de 16 caractères.
Type de commande : l’afficheur est commandé par un microcontrôleur,
par l’intermédiaire d’un bus de donnée et d’un bus de contrôle (fig. 1 page 4).
Réglage du contraste : par résistance ajustable.
Tension d’alimentation : 5 V.
2. Mémoires internes :
L’afficheur contient deux mémoires :
la mémoire appelée DD RAM (display data RAM);
la mémoire appelée CG RAM (character generator RAM).
2.1. Rôle de la mémoire DD RAM (fig. 2 page 4) :
Lorsque le bit de donnée de poids le plus fort est à 0 :
Elle reçoit le code dune instruction servant à commander l’afficheur :
valider/inhiber l’afficheur (display ON/display OFF) ;
définir le mode de fonctionnement de l’afficheur (Function SET,
Cursor or Display Shift, Entry Mode Set) ;
ramener le curseur en haut à gauche (Cursor home) ;
effacer l’afficheur (Display clear).
Lorsque le bit de donnée de poids le plus fort est à 1 :
Elle recoit le code servant à placer le curseur sur une ligne et une colonne
déterminées.
Faire l’exercice 1.
2.2. Rôle de la mémoire CG RAM :
Elle stocke le code des caractères affichés.
La table donnant le code de chacun des caractères affichables est donnée dans le
document constructeur.
ESTI Electronique
Cours : Mise en œuvre de l’afficheur LCD
Page 2 /6
Faire l’exercice 2.
ESTI Electronique
Cours : Mise en œuvre de l’afficheur LCD
Page 3 /6
3. Description des broches d’entrée/sortie de l’afficheur :
D0 à D7 : c’est le bus de donnée.
Son rôle :
Ecriture dans DD RAM : il permet d’envoyer à l’afficheur le code de
l’instruction.
Ecriture dans CG RAM : il permet d’envoyer à l’afficheur le code du caractère
à afficher.
En lecture, il permet de récupérer le contenu de DD RAM ou de CG RAM.
RS, R/W et E : ils forment le bus de contrôle.
Rôle de RS : sélectionner la mémoire DD RAM si RS = 0,
sélectionner la mémoire CG RAM si RS = 1 (fig. 3 page 4).
Rôle de R/W : opération d’écriture si R/W = 0,
opération de lecture si R/W = 1.
Rôle de E (E étant initialement à 1) : un front descendant sur E permet de
valider la donnée présente sur D0 à D7 (en écriture, la donnée rentre dans la
mémoire DD RAM ou CG RAM).
4. Commande de l’afficheur :
4.1. Ecriture d’une instruction dans la mémoire DD RAM :
L’algorithme est le suivant.
Opération : Commentaire :
Mise à 0 de R/W Ecriture …
Mise à 0 de RS … dans DD RAM
Mise à 1 de E Donnée non validée
Positionnement des bits D0 à D7 en fonction de l’instruction voulue
Mise à 0 de E Donnée validée
(exécution de l’écriture)
Faire l’exercice 3.
RS
R/W
E
D0 à D7
ESTI Electronique
Cours : Mise en œuvre de l’afficheur LCD
Page 4 /6
4.2. Programmation en assembleur ST6 :
On relie RS et E à deux bits de port, PC0 et PC2 par exemple (R/W est fixé à 0).
On relie D0 à D7 à un port du microcontrôleur, le port A par exemple.
Des instructions de manipulation de bits permettent de commander RS et E.
Une instruction de chargement permet de positionner D0 à D7.
Faire l’exercice 4.
5. Initialisation de l’afficheur :
5.1. Principe de l’initialisation :
Après la mise sous tension, l’afficheur n’est pas prêt à recevoir des codes de caractères :
il faut l’initialiser, c’est à dire le préparer à recevoir des caractères.
L’algorithme d’initialisation est par exemple celui-ci.
Opération : Valeur :
Function SET 38h
Display OFF 08
Clear Display 01
Cursor Home 02
Entry Mode Set 06
Display On 0Ch
Décrire la configuration de l’afficheur après cette initialisation.
Function Set : donnée de 8 bits, 2 lignes, petits caractères.
Entry Mode Set : décalage du curseur vers la droite (increment).
5.2. Programmation en assembleur ST6 :
L’afficheur étant commandé par un microcontrôleur, un sous-programme écrit en
langage assembleur permet d’initialiser l’afficheur.
En général ce sous-programme est inclus dans un fichier que l’on peut utiliser à chaque
nouveau programme.
Pour utiliser ce fichier, on utilise la directive d’assemblage .input
Si le fichier s’appelle BAC00LCD.asm et se trouve dans le dossier C:\ST6, on écrit :
.input C:\ST6\BAC00LCD.asm
Pour appeler le sous-programme d’initialisation, on utilise l’instruction call
Si le sous-programme s’appelle Initaff, on écrit : call initaff
ESTI Electronique
Cours : Mise en œuvre de l’afficheur LCD
Page 5 /6
Figure 1 :
Remarque : le choix des ports du microcontrôleur (port A pour le bus de contrôle et port
B pour le bus de donnée) est arbitraire.
Figure 2 :
Figure 3 :
PortA
Bus de donnée
Bus de contrôle
Microcontrôleur
Afficheur LCD
D0 à D7
autres bits
bit de poids fort
Mémoire DD RAM
0
1
Code de linstruction
Code de la position du curseur
Bus de donnée
Donnée
RS, R/W et E
Bus de donnée
Mémoire
DD RAM
Avec RS = 0 :
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !