pub struct Handle { /* private fields */ }Expand description
Handle to the PMU peripheral
This handle to the PMU peripheral provides access to the main part of the PMU API. It is also required by other parts of the API to synchronize access the the underlying registers, wherever this is required.
Please refer to the module documentation for more information about the PMU.
Implementations§
Source§impl Handle
impl Handle
Sourcepub fn enter_sleep_mode(&mut self, scb: &mut SCB)
pub fn enter_sleep_mode(&mut self, scb: &mut SCB)
Enter sleep mode
The microcontroller will wake up from sleep mode, if an NVIC-enabled interrupt occurs. See user manual, section 6.7.4.3.
Sourcepub unsafe fn enter_deep_sleep_mode(&mut self, scb: &mut SCB)
pub unsafe fn enter_deep_sleep_mode(&mut self, scb: &mut SCB)
Enter deep-sleep mode
The microcontroller will wake up from deep-sleep mode, if an NVIC-enabled interrupt occurs. See user manual, section 6.7.5.3.
§Limitations
According to the user manual, section 6.7.5.2, the IRC must be selected as the main clock before entering deep-sleep mode.
If you intend to wake up from this mode again, you need to configure the STARTERP0 and STARTERP1 registers of the SYSCON appropriately. See user manual, section 6.5.1.
§Safety
The configuration of various peripherals after wake-up is controlled by the PDAWAKECFG register. If the configuration in that register doesn’t match the peripheral states in the HAL API, you can confuse the API into believing that peripherals have a different state than they actually have which can lead to all kinds of adverse consequences.
Please make sure that the peripheral states configured in PDAWAKECFG match the peripheral states as tracked by the API before calling this method.
Sourcepub unsafe fn enter_power_down_mode(&mut self, scb: &mut SCB)
pub unsafe fn enter_power_down_mode(&mut self, scb: &mut SCB)
Enter power-down mode
The microcontroller will wake up from power-down mode, if an NVIC-enabled interrupt occurs. See user manual, section 6.7.6.3.
§Limitations
According to the user manual, section 6.7.6.2, the IRC must be selected as the main clock before entering deep-sleep mode.
If you intend to wake up from this mode again, you need to configure the STARTERP0 and STARTERP1 registers of the SYSCON appropriately. See user manual, section 6.5.1.
§Safety
The configuration of various peripherals after wake-up is controlled by the PDAWAKECFG register. If the configuration in that register doesn’t match the peripheral states in this API, you can confuse the API into believing that peripherals have a different state than they actually have which can lead to all kinds of adverse consequences.
Please make sure that the peripheral states configured in PDAWAKECFG match the peripheral states as tracked by the API before calling this method.