Hardware access layer for managing the low-frequency clock (LFCLK) and the high-frequency clock (HFCLK). More...
Enumerations |
|
| enum |
nrf_clock_lfclk_t
{
NRF_CLOCK_LFCLK_RC = CLOCK_LFCLKSRC_SRC_RC, NRF_CLOCK_LFCLK_Xtal = CLOCK_LFCLKSRC_SRC_Xtal, NRF_CLOCK_LFCLK_Synth = CLOCK_LFCLKSRC_SRC_Synth } |
|
Low-frequency clock sources.
More...
|
|
| enum |
nrf_clock_hfclk_t
{
NRF_CLOCK_HFCLK_LOW_ACCURACY = CLOCK_HFCLKSTAT_SRC_RC, NRF_CLOCK_HFCLK_HIGH_ACCURACY = CLOCK_HFCLKSTAT_SRC_Xtal } |
|
High-frequency clock sources.
More...
|
|
| enum |
nrf_clock_start_task_status_t
{
NRF_CLOCK_START_TASK_NOT_TRIGGERED = CLOCK_LFCLKRUN_STATUS_NotTriggered, NRF_CLOCK_START_TASK_TRIGGERED = CLOCK_LFCLKRUN_STATUS_Triggered } |
|
Trigger status of task LFCLKSTART/HFCLKSTART.
More...
|
|
| enum |
nrf_clock_int_mask_t
{
NRF_CLOCK_INT_HF_STARTED_MASK = CLOCK_INTENSET_HFCLKSTARTED_Msk, NRF_CLOCK_INT_LF_STARTED_MASK = CLOCK_INTENSET_LFCLKSTARTED_Msk, NRF_CLOCK_INT_DONE_MASK = CLOCK_INTENSET_DONE_Msk, NRF_CLOCK_INT_CTTO_MASK = CLOCK_INTENSET_CTTO_Msk } |
|
Interrupts.
More...
|
|
| enum |
nrf_clock_task_t
{
NRF_CLOCK_TASK_HFCLKSTART = offsetof(NRF_CLOCK_Type, TASKS_HFCLKSTART), NRF_CLOCK_TASK_HFCLKSTOP = offsetof(NRF_CLOCK_Type, TASKS_HFCLKSTOP), NRF_CLOCK_TASK_LFCLKSTART = offsetof(NRF_CLOCK_Type, TASKS_LFCLKSTART), NRF_CLOCK_TASK_LFCLKSTOP = offsetof(NRF_CLOCK_Type, TASKS_LFCLKSTOP), NRF_CLOCK_TASK_CAL = offsetof(NRF_CLOCK_Type, TASKS_CAL), NRF_CLOCK_TASK_CTSTART = offsetof(NRF_CLOCK_Type, TASKS_CTSTART), NRF_CLOCK_TASK_CTSTOP = offsetof(NRF_CLOCK_Type, TASKS_CTSTOP) } |
|
Tasks.
More...
|
|
| enum |
nrf_clock_event_t
{
NRF_CLOCK_EVENT_HFCLKSTARTED = offsetof(NRF_CLOCK_Type, EVENTS_HFCLKSTARTED), NRF_CLOCK_EVENT_LFCLKSTARTED = offsetof(NRF_CLOCK_Type, EVENTS_LFCLKSTARTED), NRF_CLOCK_EVENT_DONE = offsetof(NRF_CLOCK_Type, EVENTS_DONE), NRF_CLOCK_EVENT_CTTO = offsetof(NRF_CLOCK_Type, EVENTS_CTTO) } |
|
Events.
More...
|
|
Functions |
|
| __STATIC_INLINE void | nrf_clock_int_enable (uint32_t int_mask) |
|
Function for enabling a specific interrupt.
More...
|
|
| __STATIC_INLINE void | nrf_clock_int_disable (uint32_t int_mask) |
|
Function for disabling a specific interrupt.
More...
|
|
| __STATIC_INLINE bool | nrf_clock_int_enable_check ( nrf_clock_int_mask_t int_mask) |
|
Function for retrieving the state of a specific interrupt.
More...
|
|
| __STATIC_INLINE uint32_t | nrf_clock_task_address_get ( nrf_clock_task_t task) |
|
Function for retrieving the address of a specific task.
More...
|
|
| __STATIC_INLINE void | nrf_clock_task_trigger ( nrf_clock_task_t task) |
|
Function for setting a specific task.
More...
|
|
| __STATIC_INLINE uint32_t | nrf_clock_event_address_get ( nrf_clock_event_t event) |
|
Function for retrieving the address of a specific event.
More...
|
|
| __STATIC_INLINE void | nrf_clock_event_clear ( nrf_clock_event_t event) |
|
Function for clearing a specific event.
More...
|
|
| __STATIC_INLINE bool | nrf_clock_event_check ( nrf_clock_event_t event) |
|
Function for retrieving the state of a specific event.
More...
|
|
| __STATIC_INLINE void | nrf_clock_lf_src_set ( nrf_clock_lfclk_t source) |
|
Function for changing the low-frequency clock source.
More...
|
|
| __STATIC_INLINE nrf_clock_lfclk_t | nrf_clock_lf_src_get (void) |
|
Function for retrieving the selected source for the low-frequency clock.
More...
|
|
| __STATIC_INLINE nrf_clock_lfclk_t | nrf_clock_lf_actv_src_get (void) |
|
Function for retrieving the active source of the low-frequency clock.
More...
|
|
| __STATIC_INLINE nrf_clock_lfclk_t | nrf_clock_lf_srccopy_get (void) |
|
Function for retrieving the clock source for the LFCLK clock when the task LKCLKSTART is triggered.
More...
|
|
| __STATIC_INLINE bool | nrf_clock_lf_is_running (void) |
|
Function for retrieving the state of the LFCLK clock.
More...
|
|
|
__STATIC_INLINE
nrf_clock_start_task_status_t |
nrf_clock_lf_start_task_status_get (void) |
|
Function for retrieving the trigger status of the task LFCLKSTART.
More...
|
|
| __STATIC_INLINE nrf_clock_hfclk_t | nrf_clock_hf_src_get (void) |
|
Function for retrieving the active source of the high-frequency clock.
More...
|
|
| __STATIC_INLINE bool | nrf_clock_hf_is_running ( nrf_clock_hfclk_t clk_src) |
|
Function for retrieving the state of the HFCLK clock.
More...
|
|
|
__STATIC_INLINE
nrf_clock_start_task_status_t |
nrf_clock_hf_start_task_status_get (void) |
|
Function for retrieving the trigger status of the task HFCLKSTART.
More...
|
|
| __STATIC_INLINE void | nrf_clock_cal_timer_timeout_set (uint32_t interval) |
|
Function for changing the calibration timer interval.
More...
|
|
Detailed Description
Hardware access layer for managing the low-frequency clock (LFCLK) and the high-frequency clock (HFCLK).
Enumeration Type Documentation
| enum nrf_clock_event_t |
| enum nrf_clock_hfclk_t |
| enum nrf_clock_int_mask_t |
| enum nrf_clock_lfclk_t |
| enum nrf_clock_task_t |
Tasks.
The NRF_CLOCK_TASK_LFCLKSTOP task cannot be set when the low-frequency clock is not running. The NRF_CLOCK_TASK_HFCLKSTOP task cannot be set when the high-frequency clock is not running.
Function Documentation
| __STATIC_INLINE void nrf_clock_cal_timer_timeout_set | ( | uint32_t | interval | ) |
Function for changing the calibration timer interval.
- Parameters
-
[in] interval New calibration timer interval in 0.25 s resolution (range: 0.25 seconds to 31.75 seconds).
| __STATIC_INLINE uint32_t nrf_clock_event_address_get | ( | nrf_clock_event_t | event | ) |
Function for retrieving the address of a specific event.
This function can be used by the PPI module.
- Parameters
-
[in] event Event.
- Returns
- Address of the requested event register.
| __STATIC_INLINE bool nrf_clock_event_check | ( | nrf_clock_event_t | event | ) |
Function for retrieving the state of a specific event.
- Parameters
-
[in] event Event.
- Return values
-
true If the event is set. false If the event is not set.
| __STATIC_INLINE void nrf_clock_event_clear | ( | nrf_clock_event_t | event | ) |
Function for clearing a specific event.
- Parameters
-
[in] event Event.
| __STATIC_INLINE bool nrf_clock_hf_is_running | ( | nrf_clock_hfclk_t | clk_src | ) |
Function for retrieving the state of the HFCLK clock.
- Parameters
-
[in] clk_src Clock source to be checked.
- Return values
-
false If the HFCLK clock is not running. true If the HFCLK clock is running.
| __STATIC_INLINE nrf_clock_hfclk_t nrf_clock_hf_src_get | ( | void | ) |
Function for retrieving the active source of the high-frequency clock.
- Return values
-
NRF_CLOCK_HFCLK_LOW_ACCURACY If the internal 16 MHz RC oscillator is the active source of the high-frequency clock. NRF_CLOCK_HFCLK_HIGH_ACCURACY If an external 16 MHz/32 MHz crystal oscillator is the active source of the high-frequency clock.
| __STATIC_INLINE nrf_clock_start_task_status_t nrf_clock_hf_start_task_status_get | ( | void | ) |
Function for retrieving the trigger status of the task HFCLKSTART.
- Return values
-
NRF_CLOCK_START_TASK_NOT_TRIGGERED If the task HFCLKSTART has not been triggered. NRF_CLOCK_START_TASK_TRIGGERED If the task HFCLKSTART has been triggered.
| __STATIC_INLINE void nrf_clock_int_disable | ( | uint32_t | int_mask | ) |
Function for disabling a specific interrupt.
- Parameters
-
[in] int_mask Interrupt.
| __STATIC_INLINE void nrf_clock_int_enable | ( | uint32_t | int_mask | ) |
Function for enabling a specific interrupt.
- Parameters
-
[in] int_mask Interrupt.
| __STATIC_INLINE bool nrf_clock_int_enable_check | ( | nrf_clock_int_mask_t | int_mask | ) |
Function for retrieving the state of a specific interrupt.
- Parameters
-
[in] int_mask Interrupt.
- Return values
-
true If the interrupt is enabled. false If the interrupt is not enabled.
| __STATIC_INLINE nrf_clock_lfclk_t nrf_clock_lf_actv_src_get | ( | void | ) |
Function for retrieving the active source of the low-frequency clock.
- Return values
-
NRF_CLOCK_LFCLK_RC If the internal 32 kHz RC oscillator is the active source of the low-frequency clock. NRF_CLOCK_LFCLK_Xtal If an external 32 kHz crystal oscillator is the active source of the low-frequency clock. NRF_CLOCK_LFCLK_Synth If the internal 32 kHz synthesizer from the HFCLK is the active source of the low-frequency clock.
| __STATIC_INLINE bool nrf_clock_lf_is_running | ( | void | ) |
Function for retrieving the state of the LFCLK clock.
- Return values
-
false If the LFCLK clock is not running. true If the LFCLK clock is running.
| __STATIC_INLINE nrf_clock_lfclk_t nrf_clock_lf_src_get | ( | void | ) |
Function for retrieving the selected source for the low-frequency clock.
- Return values
-
NRF_CLOCK_LFCLK_RC If the internal 32 kHz RC oscillator is the selected source for the low-frequency clock. NRF_CLOCK_LFCLK_Xtal If an external 32 kHz crystal oscillator is the selected source for the low-frequency clock. NRF_CLOCK_LFCLK_Synth If the internal 32 kHz synthesizer from the HFCLK is the selected source for the low-frequency clock.
| __STATIC_INLINE void nrf_clock_lf_src_set | ( | nrf_clock_lfclk_t | source | ) |
Function for changing the low-frequency clock source.
This function cannot be called when the low-frequency clock is running.
- Parameters
-
[in] source New low-frequency clock source.
| __STATIC_INLINE nrf_clock_lfclk_t nrf_clock_lf_srccopy_get | ( | void | ) |
Function for retrieving the clock source for the LFCLK clock when the task LKCLKSTART is triggered.
- Return values
-
NRF_CLOCK_LFCLK_RC If the internal 32 kHz RC oscillator is running and generating the LFCLK clock. NRF_CLOCK_LFCLK_Xtal If an external 32 kHz crystal oscillator is running and generating the LFCLK clock. NRF_CLOCK_LFCLK_Synth If the internal 32 kHz synthesizer from the HFCLK is running and generating the LFCLK clock.
| __STATIC_INLINE nrf_clock_start_task_status_t nrf_clock_lf_start_task_status_get | ( | void | ) |
Function for retrieving the trigger status of the task LFCLKSTART.
- Return values
-
NRF_CLOCK_START_TASK_NOT_TRIGGERED If the task LFCLKSTART has not been triggered. NRF_CLOCK_START_TASK_TRIGGERED If the task LFCLKSTART has been triggered.
| __STATIC_INLINE uint32_t nrf_clock_task_address_get | ( | nrf_clock_task_t | task | ) |
Function for retrieving the address of a specific task.
This function can be used by the PPI module.
- Parameters
-
[in] task Task.
- Returns
- Address of the requested task register.
| __STATIC_INLINE void nrf_clock_task_trigger | ( | nrf_clock_task_t | task | ) |
Function for setting a specific task.
- Parameters
-
[in] task Task.