CLOCK peripheral driver. More...
Modules | |
CLOCK peripheral driver configuration | |
Typedefs | |
typedef void(* | nrfx_clock_event_handler_t) (nrfx_clock_evt_type_t event) |
Clock event handler. More... | |
Enumerations | |
enum | nrfx_clock_evt_type_t { NRFX_CLOCK_EVT_HFCLK_STARTED, NRFX_CLOCK_EVT_LFCLK_STARTED, NRFX_CLOCK_EVT_CTTO, NRFX_CLOCK_EVT_CAL_DONE, NRFX_CLOCK_EVT_HFCLKAUDIO_STARTED, NRFX_CLOCK_EVT_HFCLK192M_STARTED } |
Clock events. More... | |
Functions | |
nrfx_err_t | nrfx_clock_init (nrfx_clock_event_handler_t event_handler) |
Function for initializing internal structures in the nrfx_clock module. More... | |
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. More... | |
void | nrfx_clock_stop (nrf_clock_domain_t domain) |
Function for stopping the specified clock domain. More... | |
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. More... | |
NRFX_STATIC_INLINE void | nrfx_clock_lfclk_start (void) |
Function for starting the LFCLK. More... | |
NRFX_STATIC_INLINE void | nrfx_clock_lfclk_stop (void) |
Function for stopping the LFCLK. More... | |
NRFX_STATIC_INLINE bool | nrfx_clock_lfclk_is_running (void) |
Function for checking the LFCLK state. More... | |
NRFX_STATIC_INLINE void | nrfx_clock_hfclk_start (void) |
Function for starting the high-accuracy source HFCLK. More... | |
NRFX_STATIC_INLINE void | nrfx_clock_hfclk_stop (void) |
Function for stopping the external high-accuracy source HFCLK. More... | |
NRFX_STATIC_INLINE bool | nrfx_clock_hfclk_is_running (void) |
Function for checking the HFCLK state. More... | |
nrfx_err_t | nrfx_clock_calibration_start (void) |
Function for starting the calibration of internal LFCLK. More... | |
nrfx_err_t | nrfx_clock_is_calibrating (void) |
Function for checking if calibration is in progress. More... | |
void | nrfx_clock_calibration_timer_start (uint8_t interval) |
Function for starting calibration timer. More... | |
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. More... | |
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. More... | |
CLOCK peripheral driver.
typedef void(* nrfx_clock_event_handler_t) (nrfx_clock_evt_type_t event) |
Clock event handler.
[in] | event | Event. |
Clock events.
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.
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. |
void nrfx_clock_calibration_timer_start | ( | uint8_t | interval | ) |
Function for starting calibration timer.
[in] | interval | Time after which the CTTO event and interrupt will be generated (in 0.25 s units). |
NRFX_STATIC_INLINE bool nrfx_clock_hfclk_is_running | ( | void | ) |
Function for checking the HFCLK state.
true | The HFCLK is running (XTAL source). |
false | The HFCLK is not running. |
NRFX_STATIC_INLINE void nrfx_clock_hfclk_start | ( | void | ) |
Function for starting the high-accuracy source HFCLK.
NRFX_STATIC_INLINE void nrfx_clock_hfclk_stop | ( | void | ) |
Function for stopping the external high-accuracy source HFCLK.
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).
[in] | event_handler | Event handler provided by the user. Must not be NULL. |
NRFX_SUCCESS | The procedure is successful. |
NRFX_ERROR_ALREADY_INITIALIZED | The driver is already initialized. |
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.
NRFX_SUCCESS | The procedure is successful. |
NRFX_ERROR_BUSY | Clock is in the calibration phase. |
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.
[in] | domain | Clock domain. |
[out] | p_clk_src | 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. |
true | The clock domain is running. |
false | The clock domain is not running. |
NRFX_STATIC_INLINE bool nrfx_clock_lfclk_is_running | ( | void | ) |
Function for checking the LFCLK state.
true | The LFCLK is running. |
false | The LFCLK is not running. |
NRFX_STATIC_INLINE void nrfx_clock_lfclk_start | ( | void | ) |
Function for starting the LFCLK.
NRFX_STATIC_INLINE void nrfx_clock_lfclk_stop | ( | void | ) |
Function for stopping the LFCLK.
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.
[in] | event | One of the peripheral events. |
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.
[in] | task | One of the peripheral tasks. |
void nrfx_clock_start | ( | nrf_clock_domain_t | domain | ) |
Function for starting the specified clock domain.
[in] | domain | Clock domain. |
void nrfx_clock_stop | ( | nrf_clock_domain_t | domain | ) |
Function for stopping the specified clock domain.
[in] | domain | Clock domain. |