PIC18F2220/2320/4220/4320
TABLE 3-2:
COMPARISON BETWEEN POWER MANAGED MODES
Power
Managed
Mode
Clock during wake-up
(while primary becomes
ready)
WDT time-out
causes a ...
Peripherals are
clocked by ...
CPU is clocked by ...
Sleep
Not clocked (not running) Wake-up
Not clocked
None or INTOSC multiplexer if
Two-Speed Start-up or
Fail-Safe Clock Monitor are
enabled.
Any Idle mode Not clocked (not running) Wake-up
Primary, Secondary or Unchanged from Idle mode
INTOSC multiplexer
(CPU operates as in
corresponding Run mode).
Any Run mode Secondary or INTOSC
multiplexer
Reset
Secondary or INTOSC Unchanged from Run mode.
multiplexer
There is one exception to how the IDLEN bit functions.
When all the low-power OSCCON bits are cleared
(IDLEN:SCS1:SCS0 = 000), the device enters Sleep
mode upon the execution of the SLEEPinstruction. This
is both the Reset state of the OSCCON register and the
setting that selects Sleep mode. This maintains com-
patibility with other PICmicro devices that do not offer
power managed modes.
3.2
Sleep Mode
The power managed Sleep mode in the PIC18F2X20/
4X20 devices is identical to that offered in all other
PICmicro controllers. It is entered by clearing the
IDLEN and SCS1:SCS0 bits (this is the Reset state)
and executing the SLEEPinstruction. This shuts down
the primary oscillator and the OSTS bit is cleared (see
Figure 3-1).
If the Idle Enable bit, IDLEN (OSCCON<7>), is set to a
‘1’ when a SLEEP instruction is executed, the
peripherals will be clocked from the clock source
selected using the SCS1:SCS0 bits; however, the CPU
will not be clocked. Since the CPU is not executing
instructions, the only exits from any of the Idle modes
are by interrupt, WDT time-out or a Reset.
When a wake event occurs in Sleep mode (by interrupt,
Reset or WDT time-out), the system will not be clocked
until the primary clock source becomes ready (see
Figure 3-2), or it will be clocked from the internal
oscillator block if either the Two-Speed Start-up or the
Fail-Safe Clock Monitor are enabled (see Section 23.0
“Special Features of the CPU”). In either case, the
OSTS bit is set when the primary clock is providing the
system clocks. The IDLEN and SCS bits are not
affected by the wake-up.
When a wake-up event occurs, CPU execution is
delayed approximately 10 µs while it becomes ready to
execute code. When the CPU begins executing code,
it is clocked by the same clock source as was selected
in the power managed mode (i.e., when waking from
RC_IDLE mode, the internal oscillator block will clock
the CPU and peripherals until the primary clock source
becomes ready – this is essentially RC_RUN mode).
This continues until the primary clock source becomes
ready. When the primary clock becomes ready, the
OSTS bit is set and the system clock source is
switched to the primary clock (see Figure 3-4). The
IDLEN and SCS bits are not affected by the wake-up.
3.3
Idle Modes
The IDLEN bit allows the controller’s CPU to be
selectively shut down while the peripherals continue to
operate. Clearing IDLEN allows the CPU to be clocked.
Setting IDLEN disables clocks to the CPU, effectively
stopping program execution (see Register 2-2). The
peripherals continue to be clocked regardless of the
setting of the IDLEN bit.
While in any Idle mode or the Sleep mode, a WDT time-out
will result in a WDT wake-up to full power operation.
2003 Microchip Technology Inc.
DS39599C-page 31