void nrf_drv_clock_on_sd_disable(void) { /* Reinit interrupts */ ASSERT(m_clock_cb.module_initialized); nrf_drv_common_irq_enable(POWER_CLOCK_IRQn, CLOCK_CONFIG_IRQ_PRIORITY); /* SD leaves LFCLK enabled - disable it if it is no longer required. */ nrf_drv_clock_lfclk_release(); }
/** * @brief Function for application main entry. */ int main(void) { uint32_t err_code; err_code = nrf_drv_clock_init(); APP_ERROR_CHECK(err_code); setup_example(); while (true) { nrf_delay_ms(1000); nrf_drv_clock_lfclk_request(NULL); nrf_delay_ms(1000); nrf_drv_clock_lfclk_release(); } }
void nrf5AlarmDeinit(void) { nrf_rtc_task_trigger(RTC_INSTANCE, NRF_RTC_TASK_STOP); for (uint32_t i = 0; i < kNumTimers; i++) { nrf_rtc_event_clear(RTC_INSTANCE, sChannelData[i].mCompareEvent); nrf_rtc_event_disable(RTC_INSTANCE, sChannelData[i].mCompareEventMask); nrf_rtc_int_disable(RTC_INSTANCE, sChannelData[i].mCompareInt); } nrf_rtc_int_disable(RTC_INSTANCE, NRF_RTC_INT_OVERFLOW_MASK); nrf_rtc_event_disable(RTC_INSTANCE, RTC_EVTEN_OVRFLW_Msk); nrf_rtc_event_clear(RTC_INSTANCE, NRF_RTC_EVENT_OVERFLOW); NVIC_DisableIRQ(RTC_IRQN); NVIC_ClearPendingIRQ(RTC_IRQN); NVIC_SetPriority(RTC_IRQN, 0); nrf_drv_clock_lfclk_release(); }