1 les microcontrôleurs pic de microchip le 16f84


9

o GIE = 0, Le PIC reprend l’exécution du programme à partir de l’instruction qui suit

l’instruction SLEEP, l’interruption n’est pas prise en compte

o GIE = 1, Le PIC exécute l’instruction qui se trouve juste après l’instruction SLEEP puis se

branche à l’adresse 0004 pour exécuter la procédure d’interruption. Dans le cas où l’instruction suivant SLEEP n’est pas désirée, il faut utiliser l’instruction NOP.

L’utilisation des interruptions pour réaliser un WAKE-UP doit être utilisée avec précaution. Voir

le data sheet [1][2] du 16F84 pour plus de précisions.

I.11 La mémoire EEPROM de configuration

Pendant la phase d’implantation d’un programme dans la mémoire programme du PIC, on

programme aussi une EEPROM de configuration constituée de 5 mots de 14 bits : • 4 mots d’identification ( ID) à partir de l’adresse 0x2000 pouvant contenir un repérage quelconque que nous n’utiliserons pas,

1 mot de configuration (adresse 0x2007) qui permet : o de choisir le type de l’oscillateur pour l’horloge o de valider ou non le WDT timer o d’interdire la lecture des mémoires EEPROM de programme et de données.

13 12 1110 9 8 7 6 5 4 3 2 1 0

CP CP CPCP CP CP CPCPCPCPPWRTEWDTEFOSC1 FOSC0

• bits 1:0 FOSC1:FOSC0 Sélection du type d’oscillateur pour l’horloge

11 : Oscillateur RC 10 : Oscillateur HS (High speed) : quartz haute fréquence (jusqu’à 10 MHz) 01 : Oscillateur XT, c’est le mode le plus utilisé, quartz jusqu’à 4 MHz 00 : Oscillateur LP (Low power), consommation réduite, jusqu’à 200 kHz

• bit 2 WDTE validation du timer WDT (chien de garde)

1 : WDT validé 0 : WDT inhibé

• Bit 3 PWRTE validation d’une temporisation à la mise sous tension

1 : temporisation inhibée 0 : temporisation validée

• Bit 13:4 CP Protection en lecture du code programme

1 : pas de protection 0 : protection activée

I.12 La mémoire EEPROM de données

La mémoire EEPROM de données est constituée de 64 octets commençant à l’adresse 0x2100

que l’on peut lire et écrire depuis un programme. Ces octets sont conservés après une coupure de courant et sont très utiles pour conserver des paramètres semi permanents.

On y accède à l’aide des registres EEADR et EEDATA : toute lecture écriture dans le registre

EEDATA se fait dans la position mémoire pointée par EEADR. En fait EEADR contient l’adresse relative par rapport à la page qui commence en 0x2100, autrement dit, l’adresse va de 0 à 63.

Deux registres de contrôle (EECON1 et EECON2) sont associés à la mémoire EEMROM.

Laisser un commentaire