INTERRUPTS KS57C2308/P2308/C2316/P23167-6Multi-Level Interrupt HandlingWith multi-level interrupt handling, a lower-priority interrupt request can be executed by manipulating theinterrupt status flags, IS0 and IS1 while a high-priority interrupt is being serviced (see Table 7-2).When an interrupt is requested during normal program execution, interrupt status flags IS0 and IS1 are set to "1"and "0", respectively. This setting allows only highest-priority interrupts to be serviced. When a high-priorityrequest is accepted, both interrupt status flags are then cleared to "0" by software so that a request of any prioritylevel can be serviced. In this way, the high- and low-priority requests can be serviced in parallel (see Figure 7-4).Table 7-2. IS1 and IS0 Bit Manipulation for Multi-Level Interrupt HandlingProcess Status Before INT Effect of Isx Bit Setting After INT ACKIS1 IS0 IS1 IS00 0 0 All interrupt requests are serviced. 0 11 0 1 Only high-priority interrupts as determined by thecurrent settings in the IPR register are serviced.1 02 1 0 No additional interrupt requests will be serviced. – –– 1 1 Value undefined – –INT DisableSET IPRINT EnableLow or HighLevelInterruptGeneratedNormal ProgramProcessing(Status 0)Low or HighLevel InterruptGeneratedSingleInterrupt2-LevelInterruptStatus 1INT EnableModify StatusHigh-LevelInterruptGenerated3-LevelInterruptStatus 0Status 2INT DisableStatus 0Status 1Figure 7-4. Multi-Level Interrupt Handling