English
Language : 

MC80F0424 Datasheet, PDF (97/135 Pages) List of Unclassifed Manufacturers – 8-BIT SINGLE-CHIP MICROCONTROLLERS
Preliminary
MC80F0424/0432/0448
19.1.1 Interrupt acceptance
1. The interrupt master enable flag (I-flag) is cleared to
“0” to temporarily disable the acceptance of any follow-
ing maskable interrupts. When a non-maskable inter-
rupt is accepted, the acceptance of any following
interrupts is temporarily disabled.
2. Interrupt request flag for the interrupt source accepted is
cleared to “0”.
3. The contents of the program counter (return address)
and the program status word are saved (pushed) onto the
stack area. The stack pointer decreases 3 times.
4. The entry address of the interrupt service program is
read from the vector table address and the entry address
is loaded to the program counter.
5. The instruction stored at the entry address of the inter-
rupt service program is executed.
System clock
Instruction Fetch
Address Bus
PC
SP SP-1
SP-2
V.L. V.H.
New PC
Data Bus
Not used
PCH PCL PSW V.L. ADL ADH
OP code
Internal Read
Internal Write
Interrupt Processing Step
V.L. and V.H. are vector addresses.
ADL and ADH are start addresses of interrupt service routine as vector contents.
Interrupt Service Task
Figure 19-4 Timing chart of Interrupt Acceptance and Interrupt Return Instruction
Basic Interval Timer
Vector Table Address
0FFE0H
0FFE1H
012H
0E3H
Entry Address
0E312H
0EH
0E313H
2EH
19.1.2 Saving/Restoring General-purpose Regis-
ter
During interrupt acceptance processing, the program counter and
the program status word are automatically saved on the stack, but
accumulator and other registers are not saved itself. These regis-
ters are saved by the software if necessary. Also, when multiple
interrupt services are nested, it is necessary to avoid using the
same data memory area for saving registers.
Correspondence between vector table address for BIT interrupt
and the entry address of the interrupt service program.
The following method is used to save/restore the general-purpose
registers.
A interrupt request is not accepted until the I-flag is set to “1”
even if a requested interrupt has higher priority than that of the
current interrupt being serviced.
When nested interrupt service is required, the I-flag should be set
to “1” by “EI” instruction in the interrupt service program. In this
case, acceptable interrupt sources are selectively enabled by the
individual interrupt enable flags.
Example: Register save using push and pop instructions
INTxx: PUSH A
PUSH X
PUSH Y
interrupt processing
;SAVE ACC.
;SAVE X REG.
;SAVE Y REG.
MAR. 2005 Ver 0.2
93