Struct nrf_softdevice_s140::nrf_clock_lf_cfg_t
source · #[repr(C)]pub struct nrf_clock_lf_cfg_t {
pub source: u8,
pub rc_ctiv: u8,
pub rc_temp_ctiv: u8,
pub accuracy: u8,
}
Expand description
@brief Type representing LFCLK oscillator source.
Fields§
§source: u8
< LF oscillator clock source, see @ref NRF_CLOCK_LF_SRC.
rc_ctiv: u8
< Only for ::NRF_CLOCK_LF_SRC_RC: Calibration timer interval in 1/4 second units (nRF52: 1-32). @note To avoid excessive clock drift, 0.5 degrees Celsius is the maximum temperature change allowed in one calibration timer interval. The interval should be selected to ensure this.
@note Must be 0 if source is not ::NRF_CLOCK_LF_SRC_RC.
rc_temp_ctiv: u8
< Only for ::NRF_CLOCK_LF_SRC_RC: How often (in number of calibration intervals) the RC oscillator shall be calibrated if the temperature hasn’t changed. 0: Always calibrate even if the temperature hasn’t changed. 1: Only calibrate if the temperature has changed (legacy - nRF51 only). 2-33: Check the temperature and only calibrate if it has changed, however calibration will take place every rc_temp_ctiv intervals in any case.
@note Must be 0 if source is not ::NRF_CLOCK_LF_SRC_RC.
@note For nRF52, the application must ensure calibration at least once every 8 seconds to ensure +/-500 ppm clock stability. The recommended configuration for ::NRF_CLOCK_LF_SRC_RC on nRF52 is rc_ctiv=16 and rc_temp_ctiv=2. This will ensure calibration at least once every 8 seconds and for temperature changes of 0.5 degrees Celsius every 4 seconds. See the Product Specification for the nRF52 device being used for more information.
accuracy: u8
< External clock accuracy used in the LL to compute timing windows, see @ref NRF_CLOCK_LF_ACCURACY.
Trait Implementations§
source§impl Clone for nrf_clock_lf_cfg_t
impl Clone for nrf_clock_lf_cfg_t
source§fn clone(&self) -> nrf_clock_lf_cfg_t
fn clone(&self) -> nrf_clock_lf_cfg_t
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more