Académique Documents
Professionnel Documents
Culture Documents
Microprocesseurs et Microcontrôleurs
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 1
Plan
Introduction
Registre INTCON
Déroulement d’une interruption
Les différentes interruptions
Applications
Forme générale d’une routine d’interruption
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 2
1
08/11/2019
Introduction
Une interruption provoque l’arrêt du programme principal pour aller exécuter une
procédure d'interruption
À la fin de cette procédure, le microcontrôleur reprend le programme à l’endroit
où il s’était arrêté
Le PIC16F84A possède 4 sources d'interruption
L’interruption INT (Entrée RB0 du PORTB)
L'interruption RBI (RB4 à RB7 du port B)
L'interruption T0I : Débordement du Timer TMR0
L'interruption EEI : Fin d'écriture dans l'EEPROM
À chaque interruption sont associées deux bits : un bit de validation et un
drapeau :
• Le premier permet d'autoriser ou non l'interruption
• Le second permet au programmeur de savoir de quelle interruption il s'agit
• La majorité de ces bits sont dans le registre de contrôle des interruptions qui
s’appelle INTCON d’adresse 0Bh ou 8Bh
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 3
Registre INTCON
• Masques d’interruptions
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 4
2
08/11/2019
Registre INTCON
• Drapeaux d’interruptions
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 5
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 6
3
08/11/2019
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 7
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 8
4
08/11/2019
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 9
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 10
5
08/11/2019
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 11
Applications
Application 1:
• Faire clignoter une LED connectée sur la sortie RB1 du port B
• La temporisation permettant d'ajuster la fréquence de clignotement est
obtenue en comptant les débordements du timer TMR0 qui génèrent des
interruptions T0I
• Le TMR0 est utilisé en timer avec un prédiviseur de 256
• On suppose que la fréquence de l’oscillateur du PIC est Fosc=4MHz, alors la
fréquence de l’horloge instruction est Fi=Fosc/4=1MHz (Ti=1µs)
• Le temps de la temporisation Sera fixé avec 5 débordements du TMR0,
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 12
6
08/11/2019
Applications
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 13
Applications
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 14
7
08/11/2019
Applications
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 15
Applications
Application 2:
• Inverser l’état d’une LED connectée sur la sortie RB1 du port B, en utilisant
un interrupteur connecté sur la broche RB0/INT
• Nous allons nous servir de l’interruption générée par la broche RB0/INT
• Le déclenchement de l’interruption se fait par le front descendant de RB0/INT
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 16
8
08/11/2019
Applications
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 17
Applications
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 18
9
08/11/2019
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 19
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 20
10
08/11/2019
RST(S6)-ENSA
EEA(S3)-EST-KENITRA
-KENITRA 21
11