English
Language : 

MC80F0204 Datasheet, PDF (87/126 Pages) List of Unclassifed Manufacturers – 8-BIT SINGLE-CHIP MICROCONTROLLERS
Preliminary
MC80F0104/0204
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 18-4 Timing chart of Interrupt Acceptance and Interrupt Return Instruction
Basic Interval Timer
Vector Table Address
Entry Address
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.
0FFE0H
0FFE1H
012H
0E3H
0E312H
0EH
0E313H
2EH
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 se-
lectively enabled by the individual interrupt enable flags.
Correspondence between vector table address for BIT interrupt
and the entry address of the interrupt service program.
18.1.2 Saving/Restoring General-purpose Register
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 registers 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.
The following method is used to save/restore the general-
purpose registers.
Example: Register save using push and pop instruc-
tions
INTxx: PUSH
A
PUSH
X
PUSH
Y
interrupt processing
POP
Y
POP
X
POP
A
RETI
;SAVE ACC.
;SAVE X REG.
;SAVE Y REG.
;RESTORE Y REG.
;RESTORE X REG.
;RESTORE ACC.
;RETURN
General-purpose register save/restore using push and pop
instructions;
Mar. 2005 Ver 0.2
83