Obsolete
Product(s)
Product(s)
ST72324B-Auto
Power saving modes
Figure 25.
Active Halt mode flowchart
1.
Peripheral clocked with an external clock source can still be active.
2.
Only the MCC/RTC interrupt and some specific interrupts can exit the MCU from Active Halt mode (such as
3.
Before servicing an interrupt, the CC register is pushed on the stack. The I[1:0] bits of the CC register are
set to the current software priority level of the interrupt routine and restored when the CC register is
popped.
8.4.2
Halt mode
The Halt mode is the lowest power consumption mode of the MCU. It is entered by
executing the ‘HALT’ instruction when the OIE bit of the Main Clock Controller Status
The MCU can exit Halt mode on reception of either a specific interrupt (see
Table 25:Interrupt mapping) or a reset. When exiting Halt mode by means of a reset or an interrupt,
the oscillator is immediately turned on and the 256 or 4096 CPU cycle delay is used to
stabilize the oscillator. After the start up delay, the CPU resumes operation by servicing the
interrupt or by fetching the reset vector which woke it up (see
Figure 27).
When entering Halt mode, the I[1:0] bits in the CC register are forced to ‘10b’ to enable
interrupts. Therefore, if an interrupt is pending, the MCU wakes up immediately.
In Halt mode, the main oscillator is turned off causing all internal processing to be stopped,
including the operation of the on-chip peripherals. All peripherals are not clocked except the
ones which get their clock supply from another clock generator (such as an external or
auxiliary oscillator).
The compatibility of Watchdog operation with Halt mode is configured by the “WDGHALT”
option bit of the option byte. The HALT instruction when executed while the Watchdog
details.
Halt instruction
Reset
Interrupt(2)
Y
N
Y
CPU
Oscillator
Peripherals(1)
I[1:0] bits
on
off
10
off
Fetch reset vector
or service interrupt
CPU
Oscillator
Peripherals
I[1:0] bits
on
off
XX(3)
on
CPU
Oscillator
Peripherals
I[1:0] bits
on
XX(3)
on
256 or 4096 CPU clock
cycle delay
(MCCSR.OIE = 1)