Afficheur architecturé autour d'un contrôleur HD44780

 




Le but de cette page est de fournir des explications succintes sur le fonctionnement
d'un afficheur 2 lignes x 16 caractères architecturé autour d'un contrôleur de type HD44780 ou compatible.
On se limitera au mode 8 bits du contrôleur ( qui peut aussi être configuré en mode 4 bits ).
La documentation complète Hitachi est disponible sur le site abcélectronique (lien sur la page d'accueil)

 

Le cycle d'écriture


On considère que la broche RW de l'afficheur est à l'état 0, on est donc toujours en mode écriture vers l'afficheur.
Les commandes envoyées vers l'afficheur peuvent se décomposer en deux groupes qui sont
l'écriture d'une instruction ( effacement de l'afficheur par exemple ),
l'écriture d'une donnée ( affichage d'un caractère sur l'écran ).

Écriture d'une instruction La broche RS doit être à l'état 0.
On présente le code de l'instruction sur 8 bits (D0 à D7).
On envoie une impulsion sur la broche E.
L'instruction est prise en compte sur le front descendant de cette impulsion.
L'instruction peut être présentée avant le front montant de l'impulsion.
Écriture d'une donnée La broche RS doit être à l'état 1.
On présente le code de la donnéesur 8 bits (D0 à D7).
On envoie une impulsion sur la broche E.
La donnée est prise en compte sur le front descendant de cette impulsion.
La donnée peut être présentée avant le front montant de l'impulsion.

Les instructions

Exemple pour Fonction Set :

- RS est mise à 0 ( c'est une instruction ).
- On écrit sur D7 à D0 la valeur binaire 00110000 - DL=1 mode 8 bits - N=0 on ne gère qu'une ligne - F=0 caractères 5x8
- On envoie une impulsion positive sur la broche E.

On se limitera aux six premières instructions.

Initialisation de l'afficheur
Cette procédure est valable pour le mode 8 bits.
Il faut que les temporisations soient supérieures aux durées indiquées, sous peine d'un fonctionnement aléatoire de l'afficheur.
Pour les afficheurs actuels, les trois premières instructions n'ont pas besoin d'être répétées.
L'exemple suivant est une initialisation à partir d'un PIC ou le PORTB est connecté aux lignes D7 à D0.
Avant d'initialiser l'afficheur, il faut attendre 15 ms aprés un Reset du microcontrôleur.
Accueil