TMP91C824
91C824-30
(2) How to release the Halt mode
These HALT states can be released by resetting or requesting an interrupt. The halt release
sources are determined by the combination between the states of interrupt mask register <IFF2-0>
and the halt modes. The details for releasing the HALT status are shown in Table 3.3 4.
•
Released by requesting an interrupt
The operating released from the halt mode depends on the interrupt enabled status.When the
interrupt request level set before executing the HALT instruction exceeds the value of interrupt
mask register,the interrupt due to the source is processed after releasing the halt mode,and CPU
status executing an instruction that follows the HALT instruction. When the interrupt request level
set before executing the HALT instruction is less than the value of the interrupt mask
register,releasing the halt mode is not executed.(in non-maskable interrupts,interrupt processing is
processed after releasing the halt mode regardless of the value of the mask register.) However only
for INT0~INT4 and RTC interrupts,even if the interrupt request level set before executing the
HALT instruction is less than the value of the interrupt mask register, releasing the the halt mode is
executed. In this case,interrupt processing, and CPU starts executing the instruction next to the
HALT instruction,but the interrupt request flag is held at “1”.
(Note) Usually, interrupts can release all halts status. However, the interrupts
(/NMI,INT0-3,INTKEY,INTRTC,INTALM0 to 4) which can release the HALT mode may not be
able to do so if they are input during the period CPU is shifting to the HALT mode(for about 5 clocks
of f
FPH
) with IDLE1 or STOP mode(IDLE2 is not applicable).(In this case,an interrupt request is kept
on hold internally)
If another interrupt is generated after it has shifted to HALT mode completely, halt status can be
released without difficulty.The priority of this interrupt is compared with that of the interrupt kept on
hold internally,and the interrupt with higher priority is handled first followed by the other interrupt.
•
Releasing by resetting
Releasing all halt status is executed by resetting.
When the Stop mode is released by RESET,it is necessry enough resettin g time (see table 3.3.5)
to set the operation of the oscillator to be stable.
When releasing the halt mode by resetting, the internal RAM data keeps the state before the
“HALT” instruction is executed. However the other settings contents are initialized. (Releasing due
to interrupts keeps the state before the “HALT” instruction is executed.)