libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
PWR peripheral API

libopencm3 STM32F4xx Power Control More...

Collaboration diagram for PWR peripheral API:

Functions

void pwr_disable_backup_domain_write_protect (void)
 Disable Backup Domain Write Protection. More...
 
void pwr_enable_backup_domain_write_protect (void)
 Re-enable Backup Domain Write Protection. More...
 
void pwr_enable_power_voltage_detect (uint32_t pvd_level)
 Enable Power Voltage Detector. More...
 
void pwr_disable_power_voltage_detect (void)
 Disable Power Voltage Detector. More...
 
void pwr_clear_standby_flag (void)
 Clear the Standby Flag. More...
 
void pwr_clear_wakeup_flag (void)
 Clear the Wakeup Flag. More...
 
void pwr_set_standby_mode (void)
 Set Standby Mode in Deep Sleep. More...
 
void pwr_set_stop_mode (void)
 Set Stop Mode in Deep Sleep. More...
 
void pwr_voltage_regulator_on_in_stop (void)
 Voltage Regulator On in Stop Mode. More...
 
void pwr_voltage_regulator_low_power_in_stop (void)
 Voltage Regulator Low Power in Stop Mode. More...
 
void pwr_enable_wakeup_pin (void)
 Enable Wakeup Pin. More...
 
void pwr_disable_wakeup_pin (void)
 Release Wakeup Pin. More...
 
bool pwr_voltage_high (void)
 Get Voltage Detector Output. More...
 
bool pwr_get_standby_flag (void)
 Get Standby Flag. More...
 
bool pwr_get_wakeup_flag (void)
 Get Wakeup Flag. More...
 
void pwr_set_vos_scale (enum pwr_vos_scale scale)
 

Detailed Description

libopencm3 STM32F4xx Power Control

Version
1.0.0
Author
© 2011 Stephen Caudle scaud.nosp@m.le@d.nosp@m.oceme.nosp@m..com
Date
4 March 2013

This library supports the power control system for the STM32F4 series of ARM Cortex Microcontrollers by ST Microelectronics.

LGPL License Terms libopencm3 License

Author
© 2012 Ken Sarkies ksark.nosp@m.ies@.nosp@m.inter.nosp@m.node.nosp@m..on.n.nosp@m.et

Function Documentation

◆ pwr_clear_standby_flag()

void pwr_clear_standby_flag ( void  )

Clear the Standby Flag.

This is set when the processor returns from a standby mode.

Definition at line 86 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_CSBF.

◆ pwr_clear_wakeup_flag()

void pwr_clear_wakeup_flag ( void  )

Clear the Wakeup Flag.

This is set when the processor receives a wakeup signal.

Definition at line 97 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_CWUF.

◆ pwr_disable_backup_domain_write_protect()

void pwr_disable_backup_domain_write_protect ( void  )

Disable Backup Domain Write Protection.

This allows backup domain registers to be changed. These registers are write protected after a reset.

Definition at line 38 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_DBP.

◆ pwr_disable_power_voltage_detect()

void pwr_disable_power_voltage_detect ( void  )

Disable Power Voltage Detector.

Definition at line 75 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_PVDE.

◆ pwr_disable_wakeup_pin()

void pwr_disable_wakeup_pin ( void  )

Release Wakeup Pin.

The wakeup pin is used for general purpose I/O.

Definition at line 159 of file pwr_common_v1.c.

References PWR_CSR, and PWR_CSR_EWUP.

◆ pwr_enable_backup_domain_write_protect()

void pwr_enable_backup_domain_write_protect ( void  )

Re-enable Backup Domain Write Protection.

This protects backup domain registers from inadvertent change.

Definition at line 49 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_DBP.

◆ pwr_enable_power_voltage_detect()

void pwr_enable_power_voltage_detect ( uint32_t  pvd_level)

Enable Power Voltage Detector.

This provides voltage level threshold detection. The result of detection is provided in the power voltage detector output flag (see pwr_voltage_high) or by setting the EXTI16 interrupt (see datasheet for configuration details).

Parameters
[in]pvd_leveluint32_t. Taken from PVD level selection.

Definition at line 64 of file pwr_common_v1.c.

References PWR_CR, PWR_CR_PLS_MASK, and PWR_CR_PVDE.

◆ pwr_enable_wakeup_pin()

void pwr_enable_wakeup_pin ( void  )

Enable Wakeup Pin.

The wakeup pin is used for waking the processor from standby mode.

Definition at line 148 of file pwr_common_v1.c.

References PWR_CSR, and PWR_CSR_EWUP.

◆ pwr_get_standby_flag()

bool pwr_get_standby_flag ( void  )

Get Standby Flag.

The standby flag is set when the processor returns from a standby state. It is cleared by software (see pwr_clear_standby_flag).

Returns
boolean: TRUE if the processor was in standby state.

Definition at line 188 of file pwr_common_v1.c.

References PWR_CSR, and PWR_CSR_SBF.

◆ pwr_get_wakeup_flag()

bool pwr_get_wakeup_flag ( void  )

Get Wakeup Flag.

The wakeup flag is set when a wakeup event has been received. It is cleared by software (see pwr_clear_wakeup_flag).

Returns
boolean: TRUE if a wakeup event was received.

Definition at line 202 of file pwr_common_v1.c.

References PWR_CSR, and PWR_CSR_WUF.

◆ pwr_set_standby_mode()

void pwr_set_standby_mode ( void  )

Set Standby Mode in Deep Sleep.

Definition at line 107 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_PDDS.

◆ pwr_set_stop_mode()

void pwr_set_stop_mode ( void  )

Set Stop Mode in Deep Sleep.

Definition at line 117 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_PDDS.

◆ pwr_set_vos_scale()

void pwr_set_vos_scale ( enum pwr_vos_scale  scale)

Definition at line 41 of file pwr.c.

References PWR_CR, PWR_CR_VOS_MASK, and PWR_CR_VOS_SHIFT.

Referenced by rcc_clock_setup_pll().

Here is the caller graph for this function:

◆ pwr_voltage_high()

bool pwr_voltage_high ( void  )

Get Voltage Detector Output.

The voltage detector threshold must be set when the power voltage detector is enabled, see pwr_enable_power_voltage_detect.

Returns
boolean: TRUE if the power voltage is above the preset voltage threshold.

Definition at line 174 of file pwr_common_v1.c.

References PWR_CSR, and PWR_CSR_PVDO.

◆ pwr_voltage_regulator_low_power_in_stop()

void pwr_voltage_regulator_low_power_in_stop ( void  )

Voltage Regulator Low Power in Stop Mode.

Definition at line 137 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_LPDS.

◆ pwr_voltage_regulator_on_in_stop()

void pwr_voltage_regulator_on_in_stop ( void  )

Voltage Regulator On in Stop Mode.

Definition at line 127 of file pwr_common_v1.c.

References PWR_CR, and PWR_CR_LPDS.