5.5.2. L'ALU et l'Accumulateur W
L'ALU est une Unité Arithmétique et Logique
à 8 Bits qui réalise les opérations arithmétiques
et logique de base. L'accumulateur W est un registre de travail 8 bits, toutes
les opérations à deux opérandes passent par lui. On peut
avoir :
- Une instruction sur un seul opérande qui est en
général un registre situé dans la RAM
- Une instruction sur 2 opérandes. Dans ce cas, l'un
des deux opérandes est toujours l'accumulateur W, l'autre peut
être soit un registre soit une constante.
Pour les instructions dont un des opérandes est un
registre, le résultat peut être récupéré soit
dans l'accumulateur, soit dans le registre lui-même.
5.5.3. Les mémoires du PIC 16F877
Les mémoires sont de trois types différents [11] :
A. La mémoire FLASH
C'est une mémoire programme de taille 8ko.Chaque case
mémoire unitaire est de taille 13 bits. Cette mémoire est de type
mémoires stable, c'est-à-dire qu'on peut réécrire
dessus à volonté, car le 16F877 est caractérisé par
la possibilité d'écrire des données. La zone
mémoire est caractérisée par une adresse de 13 bits, alors
ceci nous impose donc pour l'adressage les
registres EEAR et EEADRH. De même, nous aurons pour les
données, les registres EEDATA et EEDATH. Le PIC commence
l'exécution à l'adresse 0000H. De plus, lorsqu'il y a une
interruption, le PIC va à l'adresse 0004H. Il est donc nécessaire
de bien organiser le programme si celui-ci utilise des interruptions. Le
programme exécutable par le PIC est implanté dans la
mémoire flash à l'aide d'un programmateur (hard+soft).
B. La mémoire RAM
Cette mémoire de taille 368 octets est une
mémoire d'accès rapide et elle est volatile (les données
seront perdus lorsque elle n'est plus sous tentions). Elle contient tous les
registres de configuration du PIC ainsi que les différents registres de
données. Elle contient également les variables utilisées
par le programme. La RAM est la mémoire la plus utilisée. Toutes
les données qui y sont stockées sont perdues lors d'une coupure
de courant.
La RAM est subdivisée de plus en deux parties dans
chacune on trouve des « cases mémoire spéciales »
appelée REGISTRES SPECIAUX et des cases mémoire « libre
» dont on peut se servir provoque un fonctionnement spécial du PIC
ou la mise en service d'une fonction particulière.
C. L'EPROM Interne
Le pic 16F877contient également la mémoire
électriquement effaçable, réecrivable et stable. Ce type
de mémoire est d'accès plus lent. Pour gérer cette EEPROM
on a besoin de quatre registres, à savoir EEDR, EEDATA, EECON1 et
EECON2. Le registre EEADR est utilisé pour placer l'adresse relative en
EEPROM, tandis que le EEDATA contient la donnée à lire ou
à écrire. L'adresse relative de l'accès EEPROM est donc
comprise entre 0000 et 00FF ce qui nous permet d'utiliser un registre de huit
bit pour définir cette adresse.
|