CLOCK driver
- group nrfx_clock
CLOCK peripheral driver.
Typedefs
-
typedef void (*nrfx_clock_event_handler_t)(nrfx_clock_evt_type_t event)
Clock event handler.
- Param event
[in] Event.
Enums
-
enum nrfx_clock_evt_type_t
Clock events.
Values:
-
enumerator NRFX_CLOCK_EVT_HFCLK_STARTED
HFCLK has been started.
-
enumerator NRFX_CLOCK_EVT_LFCLK_STARTED
LFCLK has been started.
-
enumerator NRFX_CLOCK_EVT_CTTO
Calibration timeout.
-
enumerator NRFX_CLOCK_EVT_CAL_DONE
Calibration has been done.
-
enumerator NRFX_CLOCK_EVT_HFCLKAUDIO_STARTED
HFCLKAUDIO has been started.
-
enumerator NRFX_CLOCK_EVT_HFCLK192M_STARTED
HFCLK192M has been started.
-
enumerator NRFX_CLOCK_EVT_HFCLK_STARTED
Functions
-
nrfx_err_t nrfx_clock_init(nrfx_clock_event_handler_t event_handler)
Function for initializing internal structures in the nrfx_clock module.
After initialization, the module is in power off state (clocks are not started).
- Parameters
event_handler – [in] Event handler provided by the user. Must not be NULL.
- Return values
NRFX_SUCCESS – The procedure is successful.
NRFX_ERROR_ALREADY_INITIALIZED – The driver is already initialized.
-
void nrfx_clock_enable(void)
Function for enabling interrupts in the clock module.
-
void nrfx_clock_disable(void)
Function for disabling interrupts in the clock module.
-
void nrfx_clock_uninit(void)
Function for uninitializing the clock module.
-
void nrfx_clock_start(nrf_clock_domain_t domain)
Function for starting the specified clock domain.
- Parameters
domain – [in] Clock domain.
-
void nrfx_clock_stop(nrf_clock_domain_t domain)
Function for stopping the specified clock domain.
- Parameters
domain – [in] Clock domain.
-
NRFX_STATIC_INLINE bool nrfx_clock_is_running(nrf_clock_domain_t domain, void *p_clk_src)
Function for checking the specified clock domain state.
XTAL source is assumed for domains with multiple sources.
- Parameters
domain – [in] Clock domain.
p_clk_src – [out] Pointer to a clock source that is running. Set to NULL if not needed. Ignored for HFCLKAUDIO domain. Variable pointed by
p_clk_src
must be of either nrf_clock_lfclk_t type for LFCLK or nrf_clock_hfclk_t type for HFCLK and HFCLK192M.
- Return values
true – The clock domain is running.
false – The clock domain is not running.
-
NRFX_STATIC_INLINE void nrfx_clock_lfclk_start(void)
Function for starting the LFCLK.
Note
This function is deprecated. Use nrfx_clock_start instead.
-
NRFX_STATIC_INLINE void nrfx_clock_lfclk_stop(void)
Function for stopping the LFCLK.
Note
This function is deprecated. Use nrfx_clock_stop instead.
-
NRFX_STATIC_INLINE bool nrfx_clock_lfclk_is_running(void)
Function for checking the LFCLK state.
Note
This function is deprecated. Use nrfx_clock_is_running instead.
- Return values
true – The LFCLK is running.
false – The LFCLK is not running.
-
NRFX_STATIC_INLINE void nrfx_clock_hfclk_start(void)
Function for starting the high-accuracy source HFCLK.
Note
This function is deprecated. Use nrfx_clock_start instead.
-
NRFX_STATIC_INLINE void nrfx_clock_hfclk_stop(void)
Function for stopping the external high-accuracy source HFCLK.
Note
This function is deprecated. Use nrfx_clock_stop instead.
-
NRFX_STATIC_INLINE bool nrfx_clock_hfclk_is_running(void)
Function for checking the HFCLK state.
Note
This function is deprecated. Use nrfx_clock_is_running instead.
- Return values
true – The HFCLK is running (XTAL source).
false – The HFCLK is not running.
-
nrfx_err_t nrfx_clock_calibration_start(void)
Function for starting the calibration of internal LFCLK.
This function starts the calibration process. The process cannot be aborted. LFCLK and HFCLK must be running before this function is called.
- Return values
NRFX_SUCCESS – The procedure is successful.
NRFX_ERROR_INVALID_STATE – The low-frequency of high-frequency clock is off.
NRFX_ERROR_BUSY – Clock is in the calibration phase.
-
nrfx_err_t nrfx_clock_is_calibrating(void)
Function for checking if calibration is in progress.
This function indicates that the system is in calibration phase.
- Return values
NRFX_SUCCESS – The procedure is successful.
NRFX_ERROR_BUSY – Clock is in the calibration phase.
-
void nrfx_clock_calibration_timer_start(uint8_t interval)
Function for starting calibration timer.
- Parameters
interval – [in] Time after which the CTTO event and interrupt will be generated (in 0.25 s units).
-
void nrfx_clock_calibration_timer_stop(void)
Function for stopping the calibration timer.
-
NRFX_STATIC_INLINE uint32_t nrfx_clock_ppi_task_addr(nrf_clock_task_t task)
Function for returning a requested task address for the clock driver module.
- Parameters
task – [in] One of the peripheral tasks.
- Returns
Task address.
-
NRFX_STATIC_INLINE uint32_t nrfx_clock_ppi_event_addr(nrf_clock_event_t event)
Function for returning a requested event address for the clock driver module.
- Parameters
event – [in] One of the peripheral events.
- Returns
Event address.
-
typedef void (*nrfx_clock_event_handler_t)(nrfx_clock_evt_type_t event)