Vous êtes sur la page 1sur 14

Chapitre 1:

Architecture du microcontrôleur PIC 16F84

Niveau: 2A, 2P et 3B

1
PLAN
• Les registres spéciaux
• Les ports A et B
• Configuration des ports A et B
• Changements des états des ports A et B

2
Le PIC 16F84: la mémoire de données RAM
• Deux parties:
▪ SFR ( Special Function Registers)

▪ GPR: (General Purpose Registers)

• Les deux parties sont divisées en


deux banques.

• Chaque banque est composée de 128


octets.

• Les 12 premières ligne de chaque


banque sont réservées pour les SFR.
3
• Taille d’un mot mémoire = 8 bits
Le PIC 16F84: les registres généraux GPR
▪ GPR: (General Purpose Registers) ▪ SFR ( Special Function Registers)
• Chaque registre provoque un fonctionnement
• des cases mémoires « libres » aux spécial du PIC ou la mise en service d’une fonction
utilisateurs. particulière.

• Certains registres ont une fonction générale,


• Les GPR sont accessibles soit d'autres ont une fonction spécifique attachée à un
périphérique donné.
directement soit indirectement à
travers les registres FSR et INDF.
• Pour la grande majorité des registres, chaque bit a
une fonction spéciale.
• Les adresses GPR dans la banques 0 et
• Certains registres sont identiques dans les 2
la banques 1 sont mappées, donc banques .Cela signifie qu’y accéder depuis la banque
depuis la banque 0 ou la banque 1, il y 0 ou 1 ne fait pas de différence.
a accès à la même case mémoire.
4
Special Function Registers SFR

5
Registre STATUS
• C’est le registre d’état: contient
l’état des résultats des opérations
arithmétiques et logiques
(modification des bits Z, DC, C),
l’état du RESET et le choix de la
banque mémoire.

• Pour le choix de la banque:


• Banque 0: RP0 (bit n°5) = 0
• Banque 1: RP0 (bit n°5) =1

6
Registres PCL PCLATH
• PC: Program Counter = PCL + PCLATH
• La taille du compteur ordinal est de 13 bits.
• Le premier octet est lu à partir de du
registre PCL.
• Le registre PCL peut être consulté pour
lecture et pour écriture.
• Les 5 derniers bits du PC (PC<12:8>) ne
sont pas accessibles ni pour lecture ni pour
écriture et ils sont lus à partir du registre
PCLATH.
7
Registres TRISA, TRISB (1)
• Registres de configuration des périphériques d’entrées sorties reliés
aux pins des ports A et B du PIC 16F84.

• TRISA – configuration des pins du port A {RA0, RA1, RA2, RA3, RA4}
• Un bit n° i a la valeur 0 = la pin i du port A est une sortie
• Un bit n° i a la valeur 1 = la pin i du port A est une entrée

• TRISB – configuration des pins du port B {RB0, RB1, RB2, RB3, RB4,
RB5, RB6, RB7}
• Un bit n° j a la valeur 0 = la pin j du port B est une sortie
• Un bit n° j a la valeur 1 = la pin j du port B est une entrée
8
Registres TRISA, TRISB (2)
• Exemples
N° bit 7 6 5 4 3 2 1 0
TRISA - - - 0 1 1 1 1
TRISB 1 0 0 0 0 1 1 0

• RA0, RA1, RA2, RA3: sont des entrées


• RA4: est une sortie
• RB0, RB3, RB4, RB5, RB6: sont des sorties
• RB1, RB2, RB7: sont des entrées

9
Registres PORTA, PORTB (1)
• Registres en relation avec les états des périphériques d’entrées sorties
reliés aux pins du PIC 16F84.

• PORTA – Etats des pins du port A {RA0, RA1, RA2, RA3, RA4}
• La valeur du bit n° i = l’état souhaité de la pin i du port A

• TRISB – Etats des pins du port B {RB0, RB1, RB2, RB3, RB4, RB5, RB6, RB7}
• La valeur du bit n° j = l’état souhaité de la pin j du port A

10
Registres PORTA, PORTB (2)
• Exemple
N° bit 7 6 5 4 3 2 1 0
PORTB 1 1 0 0 0

• Les leds branchées aux pins RB0, RB3, RB4: sont éteintes
• Les leds branchées aux pins RB5, RB6: sont allumées

11
Remarques (1)
• La broche RA4 est spéciale, elle peut être utilisée soit comme E/S normale du port A ou
comme entrée d’horloge pour le Timer TMR0.

• Le choix de l’utilisation de RA4, le choix se fait à l'aide du bit T0CS du registre spécial
OPTION_REG.

• T0CS =0 signifie que RA4 est utilisée comme E/S comme les autres pins du portA,
• T0CS=1 signifie que RA4 est une entrée pour le timer.

• RA4 est une E/S à drain ouvert, si on veut l'utiliser comme sortie
(pour allumer une LED par exemple), il ne faut pas oublier de mettre
une résistance externe vers Vdd.
• Si RA4 est positionnée à 0, l'interrupteur est fermé, la sortie est reliée à la masse.
• Si RA4 est placée à 1, l'interrupteur est ouvert, la sortie est déconnectée d'où la
nécessite de la résistance externe.
12
Remarques (2)
• Chaque pin du PORTB peut être connectées à une résistance de
rappel interne à +5V (pull-up).

• La sélection s’effectuant par le bit 7 RBPU du registre OPTION_REG,


qui permet d'alimenter (résistances en service : RBPU=0) ou non
(RBPU=1) les sorties .

13
Remarques 3
• La manipulation de n’importe quel registre spécial ne peut être faite
que si le choix de la banque convenable a été fait auparavant.
• Exemple: Pour manipuler les registres TRISA et TRISB qui
appartiennent à la banque 1, il faut tout d’abord sélectionner la
banque 1 et donc le bit RP0 (n°5) du registre STATUS = 1.

14

Vous aimerez peut-être aussi