BLE Communication timer and core configuration function

Functions

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_timer_reset (void)
 Enable the Communication Timer Reset. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_timer_reset (void)
 Disable the Communication Timer Reset, and set Communication Timer to running state. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_timer_reset (void)
 Check if the Communication Timer Reset was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_reset (void)
 Enable the Communication Core Reset. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_reset (void)
 Disable the Communication Core Reset, and set Communication Core to running state. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_reset (void)
 Check if the Communication Core Reset was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_timer_power (void)
 Enable the Communication Timer Power, the Communication Timer will be Powered Up. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_timer_power (void)
 Disable the Communication Timer Power, the Communication Timer will be Powered Down. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_timer_power (void)
 Check if the Communication Timer Power was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_power (void)
 Enable the Communication Core Power, the Communication Core will be Powered Up. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_power (void)
 Disable the Communication Core Power, the Communication Core will be Powered Down. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_power (void)
 Check if the Communication Core Power was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_timer_read_select (uint32_t select)
 Select which timer value to read. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_timer_read_select (void)
 Get which timer value was selected to read. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_timer_read_value (void)
 Get current timer value based on the selection. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_osc_sleep (void)
 Enable high frequency crystal oscillator sleep mode, and diable OSC. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_osc_sleep (void)
 Disable high frequency crystal oscillator sleep mode. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_osc_sleep (void)
 Check if the OSC sleep mode was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_radio_sleep (void)
 Enable Radio sleep mode, and disable Radio module. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_radio_sleep (void)
 Disable Radio sleep mode. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_radio_sleep (void)
 Check if the Radio sleep mode was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_deep_sleep (void)
 Enable Communication Core Deep Sleep Mode. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_deep_sleep (void)
 Disable Communication Core Deep Sleep Mode. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_deep_sleep (void)
 Check if the Communication Core Deep Sleep Mode was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_soft_wakeup_req (void)
 Enable Wake Up Request from Software. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_soft_wakeup_req (void)
 Check if the Wake Up Request was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_ext_wakeup (void)
 Enable Communication Core external wakeup. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_ext_wakeup (void)
 Disable Communication Core external wakeup. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_ext_wakeup (void)
 Check if the Communication Core external wakeup was enabled or disabled. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_comm_core_wakeup_time (uint32_t time)
 Set the time in low_power_clk clock cycles to spend in Deep Sleep Mode before waking-up the device. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_comm_wakeup_time (void)
 Get the time in low_power_clk clock cycles to spend in Deep Sleep Mode before waking-up the device. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_comm_sleep_duration (void)
 Get the actual duration of the last deep sleep phase measured in low_power_clk clock cycle. More...
 
SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_comm_wakeup_timing (uint32_t twext, uint32_t twosc, uint32_t twrm)
 Set the wakeup timing in low_power_clk clock cycles to spend when waking-up the device. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_read_comm_wakeup_timing (void)
 Read the wakeup timing in low_power_clk clock cycles to spend when waking-up the device. More...
 
SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_read_comm_wakeup_timing_twosc (void)
 Read the Twosc of the wakeup timing in low_power_clk clock cycles to spend when waking-up the device. More...
 

Detailed Description

Function Documentation

◆ ll_pwr_disable_comm_core_deep_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_deep_sleep ( void  )

Disable Communication Core Deep Sleep Mode.

Note
Switch Communication Core from sleep mode into normal active mode.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_DEEP_SLEEP_ON
Return values
None

Definition at line 954 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_comm_core_ext_wakeup()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_ext_wakeup ( void  )

Disable Communication Core external wakeup.

Note
After this configuration, Communication Core cannot be woken up by external wake-up
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_EXTWKUPDSB
Return values
None

Definition at line 1035 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_comm_core_power()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_power ( void  )

Disable the Communication Core Power, the Communication Core will be Powered Down.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_CORE
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_CORE
Return values
None

Definition at line 752 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_comm_core_reset()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_core_reset ( void  )

Disable the Communication Core Reset, and set Communication Core to running state.

Note
After powered up, Comm Core need to enter into running mode.
Register BitsName
PWR_RET01 COMM_CORE_RST_N
Return values
None

Definition at line 658 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_comm_timer_power()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_timer_power ( void  )

Disable the Communication Timer Power, the Communication Timer will be Powered Down.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_TIMER
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_TIMER
Return values
None

Definition at line 704 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_comm_timer_reset()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_comm_timer_reset ( void  )

Disable the Communication Timer Reset, and set Communication Timer to running state.

Note
After powered up, Comm Timer need to enter into running mode.
Register BitsName
PWR_RET01 COMM_TIMER_RST_N
Return values
None

Definition at line 612 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_osc_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_osc_sleep ( void  )

Disable high frequency crystal oscillator sleep mode.

Note
Switch OSC from sleep mode into normal active mode.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_OSC_SLEEP_EN
Return values
None

Definition at line 859 of file gr55xx_ll_pwr.h.

◆ ll_pwr_disable_radio_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_disable_radio_sleep ( void  )

Disable Radio sleep mode.

Note
Switch Radio from sleep mode into normal active mode.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_RADIO_SLEEP_EN
Return values
None

Definition at line 906 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_core_deep_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_deep_sleep ( void  )

Enable Communication Core Deep Sleep Mode.

Note
This bit is reset on DEEP_SLEEP_STAT falling edge.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_DEEP_SLEEP_ON
Return values
None

Definition at line 937 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_core_ext_wakeup()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_ext_wakeup ( void  )

Enable Communication Core external wakeup.

Note
After this configuration, Communication Core can be woken up by external wake-up
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_EXTWKUPDSB
Return values
None

Definition at line 1018 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_core_power()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_power ( void  )

Enable the Communication Core Power, the Communication Core will be Powered Up.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_CORE
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_CORE
Return values
None

Definition at line 736 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_core_reset()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_core_reset ( void  )

Enable the Communication Core Reset.

Note
Comm Core can be reset when all ble connection were disconnected and MCU was ready to enter into deepsleep mode, and When COMM_CORE_RST_N is 0, the ble is held in reset.
Register BitsName
PWR_RET01 COMM_CORE_RST_N
Return values
None

Definition at line 643 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_soft_wakeup_req()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_soft_wakeup_req ( void  )

Enable Wake Up Request from Software.

Note
Applies when system is in Deep Sleep Mode. It wakes up the Communication Core when written with a 1. No action happens if it is written with 0.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_SOFT_WAKEUP_REQ
Return values
None

Definition at line 986 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_timer_power()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_timer_power ( void  )

Enable the Communication Timer Power, the Communication Timer will be Powered Up.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_TIMER
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_TIMER
Return values
None

Definition at line 687 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_comm_timer_reset()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_comm_timer_reset ( void  )

Enable the Communication Timer Reset.

Note
Comm timer can be reset when all ble connection were disconnected and MCU was ready to enter into deepsleep mode.
Register BitsName
PWR_RET01 COMM_TIMER_RST_N
Return values
None

Definition at line 597 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_osc_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_osc_sleep ( void  )

Enable high frequency crystal oscillator sleep mode, and diable OSC.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_OSC_SLEEP_EN
Return values
None

Definition at line 841 of file gr55xx_ll_pwr.h.

◆ ll_pwr_enable_radio_sleep()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_enable_radio_sleep ( void  )

Enable Radio sleep mode, and disable Radio module.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_RADIO_SLEEP_EN
Return values
None

Definition at line 889 of file gr55xx_ll_pwr.h.

◆ ll_pwr_get_comm_sleep_duration()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_comm_sleep_duration ( void  )

Get the actual duration of the last deep sleep phase measured in low_power_clk clock cycle.

Register BitsName
COMM_TMR_DEEPSLPSTAT DEEPSLDUR
Return values
Sleepduration

Definition at line 1095 of file gr55xx_ll_pwr.h.

◆ ll_pwr_get_comm_wakeup_time()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_comm_wakeup_time ( void  )

Get the time in low_power_clk clock cycles to spend in Deep Sleep Mode before waking-up the device.

Register BitsName
COMM_TMR_DEEPSLWKUP AON_COMM_TMR_DEEPSLWKUP_DEEPSLTIME
Return values
Clockcycles to spend in Deep Sleep Mode before waking-up the device

Definition at line 1080 of file gr55xx_ll_pwr.h.

◆ ll_pwr_get_timer_read_select()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_timer_read_select ( void  )

Get which timer value was selected to read.

Register BitsName
PAD_CTL1 TIMER_READ_SEL
Return values
Returnedvalue can be one of the following values:

Definition at line 808 of file gr55xx_ll_pwr.h.

◆ ll_pwr_get_timer_read_value()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_get_timer_read_value ( void  )

Get current timer value based on the selection.

Note
Please read multiple times until get a stable value.
Register BitsName
PAD_CTL1 TIMER_READ_SEL
Return values
Returnedvalue can be one of the following values:

Definition at line 827 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_core_deep_sleep()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_deep_sleep ( void  )

Check if the Communication Core Deep Sleep Mode was enabled or disabled.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_DEEP_SLEEP_ON
Return values
Stateof bit (1 or 0).

Definition at line 970 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_core_ext_wakeup()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_ext_wakeup ( void  )

Check if the Communication Core external wakeup was enabled or disabled.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_EXTWKUPDSB
Return values
Stateof bit (1 or 0).

Definition at line 1051 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_core_power()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_power ( void  )

Check if the Communication Core Power was enabled or disabled.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_CORE
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_CORE
Return values
None

Definition at line 769 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_core_reset()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_core_reset ( void  )

Check if the Communication Core Reset was enabled or disabled.

Register BitsName
PWR_RET01 COMM_CORE_RST_N
Return values
Stateof bit (1 or 0).

Definition at line 672 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_timer_power()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_timer_power ( void  )

Check if the Communication Timer Power was enabled or disabled.

Register BitsName
CALENDAR_TIMER_CTL ISO_EN_PD_COMM_TIMER
CALENDAR_TIMER_CTL PWR_EN_PD_COMM_TIMER
Return values
Stateof bit (1 or 0).

Definition at line 721 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_comm_timer_reset()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_comm_timer_reset ( void  )

Check if the Communication Timer Reset was enabled or disabled.

Register BitsName
PWR_RET01 COMM_TIMER_RST_N
Return values
Stateof bit (1 or 0).

Definition at line 626 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_osc_sleep()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_osc_sleep ( void  )

Check if the OSC sleep mode was enabled or disabled.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_OSC_SLEEP_EN
Return values
Stateof bit (1 or 0).

Definition at line 875 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_radio_sleep()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_radio_sleep ( void  )

Check if the Radio sleep mode was enabled or disabled.

Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_RADIO_SLEEP_EN
Return values
Stateof bit (1 or 0).

Definition at line 922 of file gr55xx_ll_pwr.h.

◆ ll_pwr_is_enabled_soft_wakeup_req()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_is_enabled_soft_wakeup_req ( void  )

Check if the Wake Up Request was enabled or disabled.

Note
Resets at 0 means request action is performed.
Register BitsName
MSIO_PAD_CFG_1 COMM_DEEPSLCNTL_SOFT_WAKEUP_REQ
Return values
Stateof bit (1 or 0).

Definition at line 1003 of file gr55xx_ll_pwr.h.

◆ ll_pwr_read_comm_wakeup_timing()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_read_comm_wakeup_timing ( void  )

Read the wakeup timing in low_power_clk clock cycles to spend when waking-up the device.

Register BitsName
COMM_TMR_ENBPRESET TWEXT
COMM_TMR_ENBPRESET TWOSC
COMM_TMR_ENBPRESET TWRM
Return values
COMM_TMR_ENBPRESETRegister value

Definition at line 1135 of file gr55xx_ll_pwr.h.

◆ ll_pwr_read_comm_wakeup_timing_twosc()

SECTION_RAM_CODE __STATIC_INLINE uint32_t ll_pwr_read_comm_wakeup_timing_twosc ( void  )

Read the Twosc of the wakeup timing in low_power_clk clock cycles to spend when waking-up the device.

Return values
TWOSCvalue

Definition at line 1145 of file gr55xx_ll_pwr.h.

◆ ll_pwr_set_comm_core_wakeup_time()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_comm_core_wakeup_time ( uint32_t  time)

Set the time in low_power_clk clock cycles to spend in Deep Sleep Mode before waking-up the device.

Register BitsName
COMM_TMR_DEEPSLWKUP AON_COMM_TMR_DEEPSLWKUP_DEEPSLTIME
Parameters
time32 bit clock cycles loaded into the AON_COMM_TMR_DEEPSLWKUP_DEEPSLTIME
Return values
None

Definition at line 1066 of file gr55xx_ll_pwr.h.

◆ ll_pwr_set_comm_wakeup_timing()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_comm_wakeup_timing ( uint32_t  twext,
uint32_t  twosc,
uint32_t  twrm 
)

Set the wakeup timing in low_power_clk clock cycles to spend when waking-up the device.

Register BitsName
COMM_TMR_ENBPRESET TWEXT
COMM_TMR_ENBPRESET TWOSC
COMM_TMR_ENBPRESET TWRM
Parameters
twextTime in low power oscillator cycles allowed for stabilization of the high frequency oscillator following an external wake–up request (signal wakeup_req).
twoscTime in low power oscillator cycles allowed for stabilization of the high frequency oscillator when the deep–sleep mode has been left due to sleep–timer expiry.
twrmTime in low power oscillator cycles allowed for the radio module to leave low–power mode.
Return values
None

Definition at line 1116 of file gr55xx_ll_pwr.h.

◆ ll_pwr_set_timer_read_select()

SECTION_RAM_CODE __STATIC_INLINE void ll_pwr_set_timer_read_select ( uint32_t  select)

Select which timer value to read.

Register BitsName
PAD_CTL1 TIMER_READ_SEL
Parameters
selectThis parameter can be one of the following values:
Return values
None

Definition at line 788 of file gr55xx_ll_pwr.h.