Documente Academic
Documente Profesional
Documente Cultură
I INTRODUCTION
Les microcontrleurs PIC utilisent un jeu d'instructions rduit, d'o leur nom darchitecture :
RISC (Reduced Instructions Set Computer).
Les instructions sont codes sur un nombre rduit de bits, ce qui acclre l'excution du
programme (1 cycle machine par instruction sauf pour les sauts qui requirent 2 cycles).
Ils ne communiquent avec l'extrieur que par des ports dentres/sorties (ils ne possdent
pas de bus d'adresses, de bus de donnes et de bus de contrle comme la plupart des
microprocesseurs).
2 Larchitecture HARVARD utilise par les microcontrleurs PIC est base sur deux bus de
donnes.
Page 1 / 14
STI2D -SIN Microcontrleur 16F876
Avantages et inconvnients des deux architectures:
Remarque :
Le format des instructions du programme spcifi pour un PICs sexprime en kilo Mots (14
bits pour la famille 16F87X) et non en kilo octets. Comme chaque instruction est code
par un mot de 14 bits, compares aux microcontrleurs classiques (1, 2 ou 3 octets par
instruction), les PICs ont des codes instruction plus compacts et utilisent moins de mmoire.
II - CARACTRISTIQUES DU 16F876-20
Page 2 / 14
STI2D -SIN Microcontrleur 16F876
III - ARCHITECTURE INTERNE DU 16F876
Page 3 / 14
STI2D -SIN Microcontrleur 16F876
1 - Unit Arithmtique et logique ALU
Comme son nom lindique, lunit arithmtique et logique (ALU) effectue au sein du
microcontrleur PIC toutes les oprations arithmtiques et logiques dans un format de
donnes 8 bits (addition, soustraction, comparaison logique, ET logique, etc).
Ces oprations sont effectues entre
le registre de travail W et une oprande
provenant dun registre de la RAM.
Les trois bits de poids faible du registre
STATUS sont affects par le rsultat
de lopration effectue par l ALU .
Registre STATUS:
Z DC C
D7 D6 D5 D4 D3 D2 D1 D0
Z (Zro): ce bit est mis ltat logique
1 si le rsultat de lopration effectue
est nul.
DC (Digit Carry): ce bit de demi-
retenue est mis ltat logique 1 si
lopration effectue entrane la mise
ltat logique 1 du bit n4 du rsultat.
C (Carry): ce bit de retenue est mis
ltat logique 1 si lopration effectue
entrane un rsultat dont le format est
suprieur 8 bits.
2 - Description des autres lments
un chien de garde WDT (Watch Dog Timer), dispositif permettant une initialisation du PIC
lorsque le programme sexcute en dehors du temps imparti (erreur programme).
Page 4 / 14
STI2D -SIN Microcontrleur 16F876
Page 5 / 14
STI2D -SIN Microcontrleur 16F876
la mise sous tension par un front montant (min 72 ms, max 72 ms +1024 x Tosc).
Cette initialisation est appele POR (POWER ON RESET).
Cette broche peut tre simplement relie lalimentation VDD si on na pas besoin de
RESET externe.
par la mise ltat bas de cette broche, reset externe (EXTERNAL RESET).
Si on souhaite implanter un bouton de remise zro, on pourra cbler un simple rseau
RC sur la broche MCLR.
Remarque importante :
Le microcontrleur PIC possde dautres sources de reset mais cette fois-ci internes (WDT
et BOR vues prcdemment).
Page 6 / 14
STI2D -SIN Microcontrleur 16F876
Un oscillateur externe permet une
synchronisation avec un autre circuit.
c - VDD et VSS: broches dalimentation du circuit (la tension VDD peut tre comprise entre
4V 5,5V).
Page 7 / 14
STI2D -SIN Microcontrleur 16F876
Extrait du document constructeur dcrivant le rle des broches
Page 8 / 14
STI2D -SIN Microcontrleur 16F876
V - MMOIRES ET REGISTRES
Comme les microcontrleurs PIC utilisent un bus pour les instructions et un bus pour les
donnes, il faut considrer deux plans mmoire lun pour les instructions et lautre pour les
donnes ainsi que les registres internes.
On peut remarquer, le vecteur dinitialisation (de reset) est fig ladresse $0000.
Les microcontrleurs PIC nont quun seul vecteur dinterruption ladresse $0004.
Lors dune demande dinterruption, le sous programme associ doit dterminer quel
priphrique a demand cette interruption.
Les piles utilises par les sous programmes ne sont pas implantes en mmoire de
donnes comme dans le cas dun microcontrleur classique, mais dans la mmoire
programme.
Elles sont utilises lors dappels de sous programmes, on ne peut pas imbriquer plus de 8
sous programmes (ce qui est dj beaucoup).
Page 9 / 14
STI2D -SIN Microcontrleur 16F876
VI - JEU DINSTRUCTIONS
Page 10 / 14
STI2D -SIN Microcontrleur 16F876
VII - MODES DADRESSAGES
2 - Adressage immdiat
L'instruction porte sur une valeur constante indique immdiatement aprs le mnmonique.
Registre STATUS:
Si le port B est configur en sortie, tous les bits de ce port sont ltat logique 0 sauf le bit
de plus faible poids.
Page 11 / 14
STI2D -SIN Microcontrleur 16F876
4 - Adressage relatif
Ce mode d'adressage nexiste pas vraiment, mais des instructions permettent de raliser
des sauts de programme, ceux sont les instructions GOTO et CALL.
Les microcontrleurs PIC disposent travers les registres INDF (ou f0) et FSR (ou f4) dun
mode dadressage index.
La structure est un peu particulire, le registre FSR est le registre dindex et le registre
INDF permet daccder son contenu.
Page 12 / 14
STI2D -SIN Microcontrleur 16F876
6 - Manipulation de bits
a - Forage de bits
b - Test de bits.
Il sagit de 2 instructions permettant de tester un bit d'un octet de l'espace mmoire SFR.
Elles sont le plus souvent utilises pour dterminer ltat des bits des registres du
microcontrleur PIC.
Page 13 / 14
STI2D -SIN Microcontrleur 16F876
Remarques:
lors de linitialisation (RESET), toutes les lignes des ports sont configures en entres.
les registres TRISX appartiennent la BANQUE 1.
Lors de linitialisation du microcontrleur PIC, il ne faut pas oublier de changer de page
mmoire pour les configurer.
Sens E E S S E S S E
Port B RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0
Page 14 / 14