Présentation :
L'EEprom est une mémoire programmable est effaçable électriquement. La particularité de cette mémoire et de pouvoir garder les informations stockées même hors tension.
On imagine immédiatement les applications réalisables avec un tel élément, comme la sauvegarde d'un point de consigne température sur un régulateur, et tous les éléments qui permettent une reprise du programme après une coupure de tension.
Les registres :
EEARH et EEARL : Registres d'adressage de l'EEPROM
A noté que le registre EEARH est seulement présent sur les microcontrôleurs dotés de plus de 256 Octets de mémoire.
EEDR : Registre de données de l'EEPROM
Ce registre contient les données de l'EEPROM après une lecture, ou bien les données à écrires
EECR : Registres de contrôle de L'EEPROM
- EERIE : Validation de l'interruption EE_RDY, se produisant quand une opération de lecture ou écriture est terminée.
- EEMWE : Autorisation d'écriture dans la mémoire (voir procédure).
- EEWE : Seconde autorisation d'écriture dans la mémoire (voir procédure).
- EEMWE : demande de lecture de la mémoire EEPROM.
Application :
Procedure de lecture / écriture dans l'EEPROM :
bien que l'utilisation de l'EEPROM à l'aide des registres reste simple, une procédure particulière est effectuée avant toute demande d'écriture dans cette mémoire, dans le but de sécuriser au maximum le bon fonctionnement de celle-ci :
Procédure d'écriture :
- Test du bit : EEWE = 0 afin de savoir si une procédure d'écriture est en cours.
- Ecrire l'adresse où l'on souhaite écrire la donnée dans les registres EEARH et EEARL.
- Ecrire la donnée dans le registre EEDR
- Mettre à 1 le bit EEMWE
- Mettre à 1le bit EEWE dans un délai inférieur à quatre cycles d'horloge sous peine d'annuler l'écriture.
Procédure de lecture :
- Test du bit : EEWE = 0 afin de savoir si une procédure d'écriture est en cours.
- Ecrire l'adresse où l'on souhaite accéder à la donnée dans les registres EEARH et EEARL.
- Mettre à 1 le bit EERE
- Lecture de la donnée dans le registre EEDR.
Exemple :
le petit projet présenté ici, nous permettra de lire ou d'écrire un caractère numérique ou alphanumérique à l'adresse $01 de l'eeprom à l'aide d'un petit programme (section téléchargement)
On s'aperçoit à l'aide du listing ci-après du fonctionnement du programme :
Dans un premier temps le microcontrôleur se met obligatoirement en réception et attend qu'un caractère qui désignera un ordre de lecture ou d'écriture de la part du programme informatique.
- La réception du caractère alphanumérique "E" indique un ordre d'écriture dans l'eeprom, caractère suivi de la donnée à inscrire.Le microcontrôleur saute alors au sous programme ecr01 et inscrit la donnée dans la mémoire EEPROM.- La demande de lecture d'un caractère est signalée au microcontrôleur par l'envoi du caractère "L" sur le port série. Celui-ci effectue un saut à la routine lir01 et envoie immédiatement après le caractère lu dans la mémoire.
Le programme informatique par lui-même de demande pas d'explication supplémentaire étant donné sa simplicité.
Il est juste et nécessaire de sélectionner le numéro de port série.

Après coupure electrique du montage, on peut vérifier à nouveau que le caractère inscrit en mémoire soit toujours présent.
Listing :
|