# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# PIC24FJ32MC10X -- Power Saving Features

- 1
- 2
…
- 5
- 6
- 7
- 8
- 9
…
- 11
- 12

© 2006 Microchip Technology Inc. Advance Information DS39698A-page 10-7
Section 10. Power-Saving Features
Power-Saving
Features
10
10.5.1.2 PERIPHERAL MODULE DISABLE BIT (XXXPMD)
All peripheral modules (except for I/O ports) also have a second control bit that can disable their
functionality. These bits, known as the Peripheral Module Disable (PMD) bits, are generically
named “XXXPMD” (using “XXX” as the mnemonic version of the module’s name, as before).
These bits are located in the PMDx Special Function Registers. In contrast to the Module Enable
bits, the PMD bit must be set (= 1) to disable the module.
While the PMD and Module Enable bits both disable a peripheral’s functionality, the PMD bit com-
pletely shuts down the peripheral, effectively powering down all circuits and removing all clock
sources. This has the additional effect of making any of the module’s control and buffer registers,
mapped in the SFR space, unavailable for operations. In other words, when the PMD bit is used
to disable a module, the peripheral ceases to exist until the PMD bit is cleared. This differs from
using the Module Enable bit, which allows the peripheral to be reconfigured and buffer registers
preloaded, even when the peripheral’s operations are disabled.
The PMD bit is most useful in highly power-sensitive applications, where even tiny savings in
power consumption can determine the ability of an application to function. In these cases, the
bits can be set before the main body of the application to remove those peripherals that will not
be needed at all.
10.5.2 Selective Disabling of Modules in Idle Mode
To achieve additional power savings, peripheral modules can be selectively disabled whenever the
device enters Idle mode. This is done with the Stop in Idle (SIDL) control bit, which is generally
located in bit position 13 of the control register of most peripheral modules. The generic name for-
mat is “XXXSIDL” (using “XXX” as the mnemonic version of the module’s name, as before). The
Stop in Idle feature allows further reduction of power consumption during Idle mode, enhancing
power savings for extremely power-critical applications.
Almost all peripheral modules have a Stop in Idle bit, including modules that lack a module
enable bit (e.g., input capture and output compare). The Real-Time Clock module is the
exception, as it is assumed that an application involving a Real-Time Clock will need to keep the
module running continuously.

- 1
- 2
…
- 5
- 6
- 7
- 8
- 9
…
- 11
- 12