ST72324xx-Auto
Interrupts
Table 14. Interrupt software priority levels
Interrupt software priority
Level
I1
I0
Level 0 (main)
Level 1
Level 2
Level 3 (= interrupt disable)
Low
1
0
0
1
0
0
High
1
1
Figure 16. Interrupt processing flowchart
Reset
lete Product(s) Restore PC, X, A, CC
bso from stack
Pending
Y
Interrupt
N
Fetch next
Instruction
Y
“IRET”
N
Execute
instruction
Y
TRAP
Interrupt has the same or a
lower software priority
than current one
N
I1:0
The interrupt
stays pending
Stack PC, X, A, CC
Load I1:0 from interrupt SW reg.
Load PC from interrupt vector
Obsolete Product(s) - O 7.2.1
Servicing pending interrupts
As several interrupts can be pending at the same time, the interrupt to be taken into account
is determined by the following two-step process:
1. The highest software priority interrupt is serviced.
2. If several interrupts have the same software priority, then the interrupt with the highest
hardware priority is serviced first.
Figure 17 describes this decision process.
Figure 17. Priority decision process flowchart
PENDING
INTERRUPTS
Same
SOFTWARE
PRIORITY
Different
HIGHEST SOFTWARE
PRIORITY SERVICED
HIGHEST HARDWARE
PRIORITY SERVICED
Doc ID 13841 Rev 1
43/193