POWER HAL¶
-
group
nrf_power_hal
Hardware access layer for managing the POWER peripheral.
Defines
-
NRF_POWER_HAS_SLEEPEVT
¶ Symbol indicating whether sleep events are present.
-
NRF_POWER_HAS_USBREG
¶ Symbol indicating whether the POWER peripheral controls the USB regulator.
-
NRF_POWER_HAS_DCDCEN_VDDH
¶ Symbol indicating whether DCDCEN for REG0 is present.
-
NRF_POWER_HAS_DCDCEN
¶ Symbol indicating whether DCDCEN for REG1 is present.
-
NRF_POWER_HAS_POFWARN
¶ Symbol indicating whether power failure event is present.
-
NRF_POWER_HAS_POFCON
¶ Symbol indicating whether power failure comparator is present.
-
NRF_POWER_HAS_POFCON_VDDH
¶ Symbol indicating whether power failure comparator for VDDH is present.
-
NRF_POWER_HAS_RESETREAS
¶ Auxiliary definition to mark the fact that RESETREAS register is present in POWER.
-
NRF_POWER_HAS_MAINREGSTATUS
¶ Symbol indicating whether MAINREGSTATUS register is present.
Enums
-
enum
nrf_power_task_t
¶ POWER tasks.
Values:
-
enumerator
NRF_POWER_TASK_CONSTLAT
¶ Enable constant latency mode.
-
enumerator
NRF_POWER_TASK_LOWPWR
¶ Enable low-power mode (variable latency).
-
enumerator
-
enum
nrf_power_event_t
¶ POWER events.
Values:
-
enumerator
NRF_POWER_EVENT_POFWARN
¶ Power failure warning.
-
enumerator
NRF_POWER_EVENT_SLEEPENTER
¶ CPU entered WFI/WFE sleep.
-
enumerator
NRF_POWER_EVENT_SLEEPEXIT
¶ CPU exited WFI/WFE sleep.
-
enumerator
NRF_POWER_EVENT_USBDETECTED
¶ Voltage supply detected on VBUS.
-
enumerator
NRF_POWER_EVENT_USBREMOVED
¶ Voltage supply removed from VBUS.
-
enumerator
NRF_POWER_EVENT_USBPWRRDY
¶ USB 3.3V supply ready.
-
enumerator
-
enum
nrf_power_int_mask_t
¶ POWER interrupts.
Values:
-
enumerator
NRF_POWER_INT_POFWARN_MASK
¶ Write ‘1’ to Enable interrupt for POFWARN event.
-
enumerator
NRF_POWER_INT_SLEEPENTER_MASK
¶ Write ‘1’ to Enable interrupt for SLEEPENTER event.
-
enumerator
NRF_POWER_INT_SLEEPEXIT_MASK
¶ Write ‘1’ to Enable interrupt for SLEEPEXIT event.
-
enumerator
NRF_POWER_INT_USBDETECTED_MASK
¶ Write ‘1’ to Enable interrupt for USBDETECTED event.
-
enumerator
NRF_POWER_INT_USBREMOVED_MASK
¶ Write ‘1’ to Enable interrupt for USBREMOVED event.
-
enumerator
NRF_POWER_INT_USBPWRRDY_MASK
¶ Write ‘1’ to Enable interrupt for USBPWRRDY event.
-
enumerator
-
enum
nrf_power_resetreas_mask_t
¶ Reset reason.
Values:
-
enumerator
NRF_POWER_RESETREAS_RESETPIN_MASK
¶ Bit mask of RESETPIN field.
-
enumerator
NRF_POWER_RESETREAS_DOG_MASK
¶ Bit mask of DOG field.
-
enumerator
NRF_POWER_RESETREAS_SREQ_MASK
¶ Bit mask of SREQ field.
-
enumerator
NRF_POWER_RESETREAS_LOCKUP_MASK
¶ Bit mask of LOCKUP field.
-
enumerator
NRF_POWER_RESETREAS_OFF_MASK
¶ Bit mask of OFF field.
-
enumerator
NRF_POWER_RESETREAS_LPCOMP_MASK
¶ Bit mask of LPCOMP field.
-
enumerator
NRF_POWER_RESETREAS_DIF_MASK
¶ Bit mask of DIF field.
-
enumerator
NRF_POWER_RESETREAS_NFC_MASK
¶ Bit mask of NFC field.
-
enumerator
NRF_POWER_RESETREAS_VBUS_MASK
¶ Bit mask of VBUS field.
-
enumerator
-
enum
nrf_power_usbregstatus_mask_t
¶ USBREGSTATUS register bit masks.
Values:
-
enumerator
NRF_POWER_USBREGSTATUS_VBUSDETECT_MASK
¶ USB detected or removed.
-
enumerator
NRF_POWER_USBREGSTATUS_OUTPUTRDY_MASK
¶ USB 3.3V supply ready.
-
enumerator
-
enum
nrf_power_ramblock_t
¶ Numbers of RAM blocks.
Note
RAM blocks must be used in nRF51. In newer SoCs, RAM is divided into segments and this functionality is not supported. See the PS for mapping between the internal RAM and RAM blocks, because this mapping is not 1:1, and functions related to old style blocks must not be used.
Values:
-
enumerator
NRF_POWER_RAMBLOCK0
¶
-
enumerator
NRF_POWER_RAMBLOCK1
¶
-
enumerator
NRF_POWER_RAMBLOCK2
¶
-
enumerator
NRF_POWER_RAMBLOCK3
¶
-
enumerator
-
enum
nrf_power_ramblock_mask_t
¶ Masks of RAM blocks.
Values:
-
enumerator
NRF_POWER_RAMBLOCK0_MASK
¶
-
enumerator
NRF_POWER_RAMBLOCK1_MASK
¶
-
enumerator
NRF_POWER_RAMBLOCK2_MASK
¶
-
enumerator
NRF_POWER_RAMBLOCK3_MASK
¶
-
enumerator
-
enum
nrf_power_onoffram_t
¶ RAM power state position of the bits.
Values:
-
enumerator
NRF_POWER_ONRAM0
¶ Keep RAM block 0 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM0
¶ Keep retention on RAM block 0 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM1
¶ Keep RAM block 1 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM1
¶ Keep retention on RAM block 1 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM2
¶ Keep RAM block 2 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM2
¶ Keep retention on RAM block 2 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM3
¶ Keep RAM block 3 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM3
¶ Keep retention on RAM block 3 when RAM block is switched OFF.
-
enumerator
-
enum
nrf_power_onoffram_mask_t
¶ RAM power state bit masks.
Values:
-
enumerator
NRF_POWER_ONRAM0_MASK
¶ Keep RAM block 0 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM0_MASK
¶ Keep retention on RAM block 0 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM1_MASK
¶ Keep RAM block 1 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM1_MASK
¶ Keep retention on RAM block 1 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM2_MASK
¶ Keep RAM block 2 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM2_MASK
¶ Keep retention on RAM block 2 when RAM block is switched OFF.
-
enumerator
NRF_POWER_ONRAM3_MASK
¶ Keep RAM block 3 ON or OFF in System ON mode.
-
enumerator
NRF_POWER_OFFRAM3_MASK
¶ Keep retention on RAM block 3 when RAM block is switched OFF.
-
enumerator
-
enum
nrf_power_pof_thr_t
¶ Power failure comparator thresholds.
Values:
-
enumerator
NRF_POWER_POFTHR_V21
¶ Set threshold to 2.1V.
-
enumerator
NRF_POWER_POFTHR_V23
¶ Set threshold to 2.3V.
-
enumerator
NRF_POWER_POFTHR_V25
¶ Set threshold to 2.5V.
-
enumerator
NRF_POWER_POFTHR_V27
¶ Set threshold to 2.7V.
-
enumerator
NRF_POWER_POFTHR_V17
¶ Set threshold to 1.7V.
-
enumerator
NRF_POWER_POFTHR_V18
¶ Set threshold to 1.8V.
-
enumerator
NRF_POWER_POFTHR_V19
¶ Set threshold to 1.9V.
-
enumerator
NRF_POWER_POFTHR_V20
¶ Set threshold to 2.0V.
-
enumerator
NRF_POWER_POFTHR_V22
¶ Set threshold to 2.2V.
-
enumerator
NRF_POWER_POFTHR_V24
¶ Set threshold to 2.4V.
-
enumerator
NRF_POWER_POFTHR_V26
¶ Set threshold to 2.6V.
-
enumerator
NRF_POWER_POFTHR_V28
¶ Set threshold to 2.8V.
-
enumerator
-
enum
nrf_power_pof_thrvddh_t
¶ Power failure comparator thresholds for VDDH.
Values:
-
enumerator
NRF_POWER_POFTHRVDDH_V27
¶ Set threshold to 2.7V.
-
enumerator
NRF_POWER_POFTHRVDDH_V28
¶ Set threshold to 2.8V.
-
enumerator
NRF_POWER_POFTHRVDDH_V29
¶ Set threshold to 2.9V.
-
enumerator
NRF_POWER_POFTHRVDDH_V30
¶ Set threshold to 3.0V.
-
enumerator
NRF_POWER_POFTHRVDDH_V31
¶ Set threshold to 3.1V.
-
enumerator
NRF_POWER_POFTHRVDDH_V32
¶ Set threshold to 3.2V.
-
enumerator
NRF_POWER_POFTHRVDDH_V33
¶ Set threshold to 3.3V.
-
enumerator
NRF_POWER_POFTHRVDDH_V34
¶ Set threshold to 3.4V.
-
enumerator
NRF_POWER_POFTHRVDDH_V35
¶ Set threshold to 3.5V.
-
enumerator
NRF_POWER_POFTHRVDDH_V36
¶ Set threshold to 3.6V.
-
enumerator
NRF_POWER_POFTHRVDDH_V37
¶ Set threshold to 3.7V.
-
enumerator
NRF_POWER_POFTHRVDDH_V38
¶ Set threshold to 3.8V.
-
enumerator
NRF_POWER_POFTHRVDDH_V39
¶ Set threshold to 3.9V.
-
enumerator
NRF_POWER_POFTHRVDDH_V40
¶ Set threshold to 4.0V.
-
enumerator
NRF_POWER_POFTHRVDDH_V41
¶ Set threshold to 4.1V.
-
enumerator
NRF_POWER_POFTHRVDDH_V42
¶ Set threshold to 4.2V.
-
enumerator
-
enum
nrf_power_mainregstatus_t
¶ Main regulator status.
Values:
-
enumerator
NRF_POWER_MAINREGSTATUS_NORMAL
¶ Normal voltage mode. Voltage supplied on VDD.
-
enumerator
NRF_POWER_MAINREGSTATUS_HIGH
¶ High voltage mode. Voltage supplied on VDDH.
-
enumerator
-
enum
nrf_power_rampower_t
¶ Bit positions for RAMPOWER register.
All possible bits described, even if they are not used in selected MCU.
Values:
-
enumerator
NRF_POWER_RAMPOWER_S0POWER
¶ Keep RAM section S0 ON in System ON mode
-
enumerator
NRF_POWER_RAMPOWER_S1POWER
¶ Keep RAM section S1 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S2POWER
¶ Keep RAM section S2 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S3POWER
¶ Keep RAM section S3 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S4POWER
¶ Keep RAM section S4 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S5POWER
¶ Keep RAM section S5 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S6POWER
¶ Keep RAM section S6 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S7POWER
¶ Keep RAM section S7 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S8POWER
¶ Keep RAM section S8 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S9POWER
¶ Keep RAM section S9 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S10POWER
¶ Keep RAM section S10 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S11POWER
¶ Keep RAM section S11 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S12POWER
¶ Keep RAM section S12 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S13POWER
¶ Keep RAM section S13 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S14POWER
¶ Keep RAM section S14 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S15POWER
¶ Keep RAM section S15 ON in System ON mode.
-
enumerator
NRF_POWER_RAMPOWER_S0RETENTION
¶ Keep section retention in OFF mode when section is OFF
-
enumerator
NRF_POWER_RAMPOWER_S1RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S2RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S3RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S4RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S5RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S6RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S7RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S8RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S9RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S10RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S11RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S12RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S13RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S14RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
NRF_POWER_RAMPOWER_S15RETENTION
¶ Keep section retention in OFF mode when section is OFF.
-
enumerator
-
enum
nrf_power_rampower_mask_t
¶ Bit masks for RAMPOWER register.
All possible bits described, even if they are not used in selected MCU.
Values:
-
enumerator
NRF_POWER_RAMPOWER_S0POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S1POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S2POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S3POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S4POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S5POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S7POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S8POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S9POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S10POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S11POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S12POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S13POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S14POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S15POWER_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S0RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S1RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S2RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S3RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S4RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S5RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S7RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S8RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S9RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S10RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S11RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S12RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S13RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S14RETENTION_MASK
¶
-
enumerator
NRF_POWER_RAMPOWER_S15RETENTION_MASK
¶
-
enumerator
Functions
-
NRF_STATIC_INLINE void
nrf_power_task_trigger
(NRF_POWER_Type *p_reg, nrf_power_task_t task)¶ Function for activating a specific POWER task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task.
-
NRF_STATIC_INLINE uint32_t
nrf_power_task_address_get
(NRF_POWER_Type const *p_reg, nrf_power_task_t task)¶ Function for returning the address of a specific POWER task register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task.
- Returns
Task address.
-
NRF_STATIC_INLINE void
nrf_power_event_clear
(NRF_POWER_Type *p_reg, nrf_power_event_t event)¶ Function for clearing a specific event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event.
-
NRF_STATIC_INLINE bool
nrf_power_event_check
(NRF_POWER_Type const *p_reg, nrf_power_event_t event)¶ Function for retrieving the state of the POWER event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event to be checked.
- Returns true
The event has been generated.
- Returns false
The event has not been generated.
-
NRF_STATIC_INLINE bool
nrf_power_event_get_and_clear
(NRF_POWER_Type *p_reg, nrf_power_event_t event)¶ Function for getting and clearing the state of specific event.
This function checks the state of the event and clears it.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event.
- Returns true
The event was set.
- Returns false
The event was not set.
-
NRF_STATIC_INLINE uint32_t
nrf_power_event_address_get
(NRF_POWER_Type const *p_reg, nrf_power_event_t event)¶ Function for returning the address of a specific POWER event register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event.
- Returns
Address.
-
NRF_STATIC_INLINE void
nrf_power_int_enable
(NRF_POWER_Type *p_reg, uint32_t mask)¶ Function for enabling selected interrupts.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Mask of interrupts to be enabled.
-
NRF_STATIC_INLINE uint32_t
nrf_power_int_enable_check
(NRF_POWER_Type const *p_reg, uint32_t mask)¶ Function for checking if the specified interrupts are enabled.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Mask of interrupts to be checked.
- Returns
Mask of enabled interrupts.
-
NRF_STATIC_INLINE uint32_t
nrf_power_int_enable_get
(NRF_POWER_Type const *p_reg)¶ Function for retrieving the information about enabled interrupts.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The flags of enabled interrupts.
-
NRF_STATIC_INLINE void
nrf_power_int_disable
(NRF_POWER_Type *p_reg, uint32_t mask)¶ Function for disabling selected interrupts.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] Mask of interrupts to be disabled.
-
NRF_STATIC_INLINE void
nrf_power_subscribe_set
(NRF_POWER_Type *p_reg, nrf_power_task_t task, uint8_t channel)¶ Function for setting the subscribe configuration for a given POWER task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task for which to set the configuration.
channel – [in] Channel through which to subscribe events.
-
NRF_STATIC_INLINE void
nrf_power_subscribe_clear
(NRF_POWER_Type *p_reg, nrf_power_task_t task)¶ Function for clearing the subscribe configuration for a given POWER task.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
task – [in] Task for which to clear the configuration.
-
NRF_STATIC_INLINE void
nrf_power_publish_set
(NRF_POWER_Type *p_reg, nrf_power_event_t event, uint8_t channel)¶ Function for setting the publish configuration for a given POWER event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event for which to set the configuration.
channel – [in] Channel through which to publish the event.
-
NRF_STATIC_INLINE void
nrf_power_publish_clear
(NRF_POWER_Type *p_reg, nrf_power_event_t event)¶ Function for clearing the publish configuration for a given POWER event.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
event – [in] Event for which to clear the configuration.
-
NRF_STATIC_INLINE uint32_t
nrf_power_resetreas_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the reset reason bitmask.
This function returns the reset reason bitmask. Unless cleared, the RESETREAS register is cumulative. A field is cleared by writing ‘1’ to it (see nrf_power_resetreas_clear). If none of the reset sources is flagged, the chip was reset from the on-chip reset generator, which indicates a power-on-reset or a brown out reset.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The mask of reset reasons constructed with nrf_power_resetreas_mask_t.
-
NRF_STATIC_INLINE void
nrf_power_resetreas_clear
(NRF_POWER_Type *p_reg, uint32_t mask)¶ Function for clearing the selected reset reason field.
This function clears the selected reset reason field.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
mask – [in] The mask constructed from nrf_power_resetreas_mask_t enumerator values.
-
NRF_STATIC_INLINE bool
nrf_power_powerstatus_get
(NRF_POWER_Type const *p_reg)¶ Function for getting power status of the LTE Modem domain.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns true
The LTE Modem domain is powered on.
- Returns false
The LTE Modem domain is powered off.
-
NRF_STATIC_INLINE uint32_t
nrf_power_ramstatus_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the RAMSTATUS register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
Value with bits set according to the masks in nrf_power_ramblock_mask_t.
-
NRF_STATIC_INLINE void
nrf_power_pofcon_set
(NRF_POWER_Type *p_reg, bool enable, nrf_power_pof_thr_t thr)¶ Function for setting the power failure comparator configuration.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
enable – [in] True if the power failure comparator is to be enabled, false otherwise.
thr – [in] voltage threshold value.
-
NRF_STATIC_INLINE nrf_power_pof_thr_t
nrf_power_pofcon_get
(NRF_POWER_Type const *p_reg, bool *p_enabled)¶ Function for getting the power failure comparator configuration.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
p_enabled – [out] Function sets this boolean variable to true if power failure comparator is enabled. The pointer can be NULL if we do not need this information.
- Returns
Threshold setting for power failure comparator.
-
NRF_STATIC_INLINE void
nrf_power_pofcon_vddh_set
(NRF_POWER_Type *p_reg, nrf_power_pof_thrvddh_t thr)¶ Function for setting the VDDH power failure comparator threshold.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
thr – [in] Threshold to be set.
-
NRF_STATIC_INLINE nrf_power_pof_thrvddh_t
nrf_power_pofcon_vddh_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the VDDH power failure comparator threshold.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
VDDH threshold currently configured.
-
NRF_STATIC_INLINE void
nrf_power_gpregret_set
(NRF_POWER_Type *p_reg, uint8_t val)¶ Function for setting the general purpose retention register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
val – [in] Value to be set in the register.
-
NRF_STATIC_INLINE uint8_t
nrf_power_gpregret_get
(NRF_POWER_Type const *p_reg)¶ Function for getting general purpose retention register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The value from the register.
-
NRF_STATIC_INLINE void
nrf_power_gpregret2_set
(NRF_POWER_Type *p_reg, uint8_t val)¶ Function for setting the general purpose retention register 2.
Note
This register is not available in the nRF51 MCU family.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
val – [in] Value to be set in the register.
-
NRF_STATIC_INLINE uint8_t
nrf_power_gpregret2_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the general purpose retention register 2.
Note
This register is not available in all MCUs.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The value from the register.
-
NRF_STATIC_INLINE uint8_t
nrf_power_gpregret_ext_get
(NRF_POWER_Type const *p_reg, uint8_t reg_num)¶ Function for getting value of the particular general purpose retention register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
reg_num – [in] General purpose retention register number.
- Returns
The value from the register
-
NRF_STATIC_INLINE void
nrf_power_gpregret_ext_set
(NRF_POWER_Type *p_reg, uint8_t reg_num, uint8_t val)¶ Function for setting particular general purpose retention register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
reg_num – [in] General purpose retention register number.
val – [in] Value to be set in the register
-
NRF_STATIC_INLINE void
nrf_power_dcdcen_set
(NRF_POWER_Type *p_reg, bool enable)¶ Enable or disable DCDC converter.
Note
If the device consist of high voltage power input (VDDH), this setting will relate to the converter on low voltage side (1.3V output).
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
enable – [in] True if DCDC converter is to be enabled, false otherwise.
-
NRF_STATIC_INLINE bool
nrf_power_dcdcen_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the state of the DCDC converter.
Note
If the device consist of high voltage power input (VDDH), this setting will relate to the converter on low voltage side (1.3V output).
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns true
Converter is enabled.
- Returns false
Converter is disabled.
-
NRF_STATIC_INLINE void
nrf_power_rampower_mask_on
(NRF_POWER_Type *p_reg, uint8_t block, uint32_t section_mask)¶ Turn ON sections in the selected RAM block.
This function turns ON several sections in one block and also block retention.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
block – [in] RAM block index.
section_mask – [in] Mask of the sections created by merging nrf_power_rampower_mask_t flags.
-
NRF_STATIC_INLINE void
nrf_power_rampower_mask_off
(NRF_POWER_Type *p_reg, uint8_t block, uint32_t section_mask)¶ Turn ON sections in the selected RAM block.
This function turns OFF several sections in one block and also block retention.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
block – [in] RAM block index.
section_mask – [in] Mask of the sections created by merging nrf_power_rampower_mask_t flags.
-
NRF_STATIC_INLINE uint32_t
nrf_power_rampower_mask_get
(NRF_POWER_Type const *p_reg, uint8_t block)¶ Function for getting the ON mask and retention sections in the selected RAM block.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
block – [in] RAM block index.
- Returns
Mask of sections state composed from nrf_power_rampower_mask_t flags.
-
NRF_STATIC_INLINE void
nrf_power_dcdcen_vddh_set
(NRF_POWER_Type *p_reg, bool enable)¶ Function for enabling or disabling the DCDC converter on VDDH.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
enable – [in] True if DCDC converter on VDDH is to be enabled, false otherwise.
-
NRF_STATIC_INLINE bool
nrf_power_dcdcen_vddh_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the state of DCDC converter on VDDH.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns true
Converter is enabled.
- Returns false
Converter is disabled.
-
NRF_STATIC_INLINE nrf_power_mainregstatus_t
nrf_power_mainregstatus_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the main supply status.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The current main supply status.
-
NRF_STATIC_INLINE uint32_t
nrf_power_usbregstatus_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the whole USBREGSTATUS register.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns
The USBREGSTATUS register value. Use nrf_power_usbregstatus_mask_t values for bit masking.
-
NRF_STATIC_INLINE bool
nrf_power_usbregstatus_vbusdet_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the VBUS input detection status.
USBDETECTED and USBREMOVED events are derived from this information
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns false
VBUS voltage below valid threshold.
- Returns true
VBUS voltage above valid threshold.
-
NRF_STATIC_INLINE bool
nrf_power_usbregstatus_outrdy_get
(NRF_POWER_Type const *p_reg)¶ Function for getting the state of the elapsed time for the USB supply output settling.
- Parameters
p_reg – [in] Pointer to the structure of registers of the peripheral.
- Returns false
USBREG output settling time not elapsed.
- Returns true
USBREG output settling time elapsed (same information as USBPWRRDY event).
-