Software Interrupt Request Acknowledge Operation; Multiple Interrupt Servicing - NEC 78014Y Series User Manual

8-bit single-chip microcontrollers
Table of Contents

Advertisement

18.4.3 Software interrupt request acknowledge operation

A software interrupt request is acknowledged by BRK instruction execution. Software interrupt request cannot
be disabled.
If a software interrupt request is acknowledged, it is saved in the stacks, program status word (PSW) and program
counter (PC), in that order, the IE flag is reset to 0 and the contents of the vector tables (003EH and 003FH) are loaded
into PC and branched.
Return from the software interrupt is possible with the RETB instruction.
Caution

18.4.4 Multiple interrupt servicing

Accepting another interrupt request while an interrupt is being serviced is called nesting interrupts.
Nesting does not take place unless the interrupts (except the non-maskable interrupt) are enabled to be accepted
(IE = 1). Accepting another interrupt request is disabled (IE = 0) when one interrupt has been accepted. Therefore,
to enable nesting, the EI flag must be set to 1 during interrupt servicing, to enable the another interrupt.
Nesting interrupts may not occur even when the interrupts are enabled. This is controlled by the priorities of the
interrupts. Although two types of priorities, default priority and programmable priority, may be assigned to an interrupt,
nesting is controlled by using the programmable priority.
If an interrupt with the same level of priority as or the higher priority than the interrupt currently serviced occurs,
that interrupt can be accepted and nested. If an interrupt with a priority lower than that of the currently serviced interrupt
occurs, that interrupt cannot be accepted and nested.
An interrupt that is not accepted and nested because it is disabled or it has a low priority is kept pending. This
interrupt is accepted after servicing of the current interrupt has been completed and one instruction of the main routine
has been executed.
www.DataSheet4U.com
Nesting is not enabled while the non-maskable interrupt is being serviced.
Table 18-4 shows the interrupts that can be nested, and Figure 18-15 shows an example of nesting.
Table 18-4. Interrupt Request Enabled for Multiple Interrupt during Interrupt Servicing
Remarks 1. A
CHAPTER 18 INTERRUPT FUNCTIONS AND TEST FUNCTION
Do not use the RETI instruction for returning from the software interrupt.
Multiple Interrupt Request
Interrupt Servicing
Non-maskable interrupt
Maskable interrupt
Software interrupt
: Multiple interrupt enable
N/A
: Multiple interrupt disable
2. ISP and IE are flags included in PSW.
ISP = 0 : High-priority interrupt servicing
ISP = 1 : Interrupt request is not acknowledged or low-priority interrupt servicing
IE = 0
: Interrupt request acknowledge disabled
IE = 1
: Interrupt request acknowledge enabled
3. ××PR is a flag included in PR0L, PR0H.
××PR = 0: High-priority level
××PR = 1: Low-priority level
Non-maskable
Interrupt Request
N/A
N/A
ISP = 0
A
A
ISP = 1
A
A
A
A
Maskable Interrupt Request
×× PR = 0
×× PR = 1
IE = 1
IE = 0
IE = 1
IE = 0
N/A
N/A
N/A
N/A
N/A
N/A
N/A
A
N/A
N/A
A
N/A
465

Advertisement

Table of Contents
loading

Table of Contents