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.
- Parameters
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
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.
- Returns NRFX_SUCCESS
The procedure is successful.
- Returns 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.
- Returns true
The clock domain is running.
- Returns 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.
- Returns true
The LFCLK is running.
- Returns 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.
- Returns true
The HFCLK is running (XTAL source).
- Returns 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.
- Returns NRFX_SUCCESS
The procedure is successful.
- Returns NRFX_ERROR_INVALID_STATE
The low-frequency of high-frequency clock is off.
- Returns 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.
- Returns NRFX_SUCCESS
The procedure is successful.
- Returns 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 (*