MC96FR116C
60
November, 2018 Rev.1.8
10.7 Multiple Interrupts
If more than two interrupts are requested simultaneously, one of higher priority level is serviced first
and others remain pending. Among pending interrupts, the interrupt of second highest priority is
serviced next after executing current interrupt service.
In addition, as shown in Figure 10-6, another interrupt request can be serviced while servicing
previously requested interrupt. In this case, interrupt requested later must have higher priority level
and the interrupt handler should allow another interrupt request.
The following example shows how to allow INT0 interrupt request while executing INT1 interrupt
service routine. In this example, INT0 has higher group priority than INT1 interrupt according to IP0,
EA & INTnE set
Next Instruction
Next Instruction
Setting both EA bit and individual interrupt
enable bit INTnE makes the pending interrupt
active after executing the next instruction.
Main Program
Service
INT1 Interrupt
Occur
INT1 ISR
Enable INT0
EA = 1
INT0 Interrupt
Occur
INT0 ISR
RETI
RETI
Figure 10-4 Effective time of interrupt request after setting IEx registers
Figure 10-5 Accept of another interrupt request in interrupt service routine