ST6246 STMICROELECTRONICS [STMicroelectronics], ST6246 Datasheet - Page 28

no-image

ST6246

Manufacturer Part Number
ST6246
Description
8-BIT OTP/EPROM MCU WITH LCD DRIVER, EEPROM AND A/D CONVERTER
Manufacturer
STMICROELECTRONICS [STMicroelectronics]
Datasheet
ST62T46B/E46B
INTERRUPTS (Cont’d)
3.4.2 Interrupt Procedure
The interrupt procedure is very similar to a call pro-
cedure, indeed the user can consider the interrupt
as an asynchronous call procedure. As this is an
asynchronous event, the user cannot know the
context and the time at which it occurred. As a re-
sult, the user should save all Data space registers
which may be used within the interrupt routines.
There are separate sets of processor flags for nor-
mal, interrupt and non-maskable interrupt modes,
which are automatically switched and so do not
need to be saved.
The following list summarizes the interrupt proce-
dure:
MCU
– The interrupt is detected.
– The C and Z flags are replaced by the interrupt
– The PC contents are stored in the first level of
– The normal interrupt lines are inhibited (NMI still
– The first internal latch is cleared.
– The associated interrupt vectoris loaded inthe PC.
WARNING: In some circumstances, when a
maskable interrupt occurs while the ST6 core is in
NORMAL mode and especially during the execu-
tion of an ”ldi IOR, 00h” instruction (disabling all
maskable interrupts): if the interrupt arrives during
the first 3 cycles of the ”ldi” instruction (which is a
4-cycle instruction) the core will switch to interrupt
mode BUT the flags CN and ZN will NOT switch to
the interrupt pair CI and ZI.
User
– User selected registers are saved within the in-
– The source of the interrupt is found by polling the
– The interrupt is serviced.
– Return from interrupt (RETI)
28/72
364
flags (or by the NMI flags).
the stack.
active).
terrupt service routine (normally on a software
stack).
interrupt flags (if more than one source is associ-
ated with the same vector).
MCU
– Automatically the MCU switches back to the nor-
The interrupt routine usually begins by the identify-
ing the device which generated the interrupt re-
quest (by polling). The user should save the regis-
ters which are used within the interrupt routine in a
software stack. After the RETI instruction is exe-
cuted, the MCU returns to the main routine.
Figure 16. Interrupt Processing Flow Chart
mal flag set (or the interrupt flag set) and pops
the previous PC value from the stack.
YES
N O
PR OGRAM FLAGS
THE INS TRUCTI ON
INT ER RU PT MASK
THE STACK ED PC
INS TRUCTIO N
INS TRUC TION
INS TRUCT ION
EXEC UTE
A RE TI
SELECT
WAS
FETCH
C LEAR
”POP”
?
?
YES
N O
YES
?
NO
NOR MAL MODE?
AN IN TERR UP T RE QUEST
AN D INTE RR UPT MASK
IS THE C ORE
ALRE ADY IN
C HE CK IF THE RE IS
IN TERN AL MODE FLAG
PC INTO THE STACK
INT ERR UP T VECT OR
INT ER RU PT MASK
LOAD PC FROM
PUS H THE
(FFC/F FD)
SELECT
SET
VA000014

Related parts for ST6246