INTRODUCTION aux INTERRUPTIONS.

Il existe des interruptions materielles et logicielles.
Ces dernières permettent lorsque l'evenement arrive de le traiter sans l'attendre.
Lorsque l'on a au moins deux traitements à effectuer, au moins l'un des 2 est traite par interruption, voire tous les traitements.

Interruptions materielles :

Une patte du microprocesseur est directement affectee par l'interruption. Un front ou un niveau logique declenche l'interruption.

Interruptions Logicielle
Un bit concernant un registre provoque une interruption. Ce bit s'active par un evenement logiciel.
Par exemple lorsque l'on reçoit une donnee d'un modem, le registre de la communication vers le modem est rempli, une interruption est generee, le programme d'interruption lit la donnee. Ainsi entre deux receptions d'octets on peut effectuer une autre tache (par emple traiter les info du clavier de la souris, ect…)

Vector adress Interrup source CCR
Mask bit
Local mask
FFC0, C1 –
FFD4,D5
Reserve - -
FFD6, D7 SCI Serial system
SCI Receive data Register full
SCI Receiver Overrun
SCI Transmit Data Register Empty
SCI Transmit Complet
I SCIE
FFD8, D9 SPI Serial Transfer Complete I SPIE
FFDA, DB Pulse Accumulator Input Edge I PAII
FFDC, DD Pulse Accumulator Overflow I PAOVI
FFDE, DF Timer Overflow I TOI
FFE0, E1 Timer Input Capture 4/Output Compare 5 I I4/O5I
FFE2, E3 Timer Output Compare 4 I OC4I
FFE4, E5 Timer Output Compare 3 I OC3I
FFE6, E7 Timer Output Compare 2 I OC2I
FFE8, E9 Timer Output Compare 1 I OC1I
FFEA, EB Timer Input Capture 3 I IC3I
FFEC, ED Timer Input Capture 2 I IC2I
FFEE, EF Timer Input Capture 1 I IC1I
FFF0, F1 Real-Time Interrupt I RTII
FFF2, F3 IRQ (External Pin) I NONE
FFF4, F5 XIRQ Pin X NONE
FFF6, F7 Software Interrupt NONE NONE
FFF8, F9 Illegal Opcode Trap NONE NONE
FFFA, FB COP Failure NONE NOCOP
FFFC, FD Clock Monitor Fail NONE CME
FFEF, FF RESET NONE NONE

Vector adress 2 adresses où l'on stocke l'adresse d'interruption
Mask Bit Type d'interruption
Local mask I Masque par bit I (Masque general)
X Masque par bit X
None Non masque
Local MaskInterruption autorisee localement à titre individuel

Lors d'une interruption autorisee, le micro fini par executer l'instruction en cours, sauvegarde A, B, X et Y dans pile ainsi que la prochaine adresse de la prochaine instruction à executer s'il n'a pas ete interrompu. Lorsque le programme execute le sous programme d'interruption, le Bit I (masque d'interruption) est positionne à 1 (c'est à dire plus d'interruption autorisee). Lors du retour du sous programme d'interruption il est repositionne à zero.

DEBUT DE PAGE

Gestion d'un feu tricolore avec pieton prioritaire

SOMMAIRE


Giampiero D'AQUINO
Enseignant en Genie Electronique