static void rtc_handler(nrf_drv_rtc_int_type_t int_type) { #if 1 speed_driver_cc_set(speed_driver_counter_get()+DEF_TIME_COUNT,true); //my_printf("rtc_handle %d\r\n", speed_driver_counter_get()); #endif //发出瞬间功率处理事件--不能直接发,采用回调接口 if(g_speed_driver_interval_timer_callback) { g_speed_driver_interval_timer_callback(DEF_TIME_OUT/10); //tick per 92us } // Likely a counter overflow. //APP_ERROR_CHECK(0xFFFFFFFF); }
时间: 2023-10-10 14:08:52 浏览: 131
这是一个名为`rtc_handler`的函数,在Nordic公司的nRF5系列芯片上处理RTC(Real-time counter)模块的中断。其中#if 1表示条件编译,即编译器会编译在#if 1和#endif之间的代码。在这段代码中,它调用了名为`speed_driver_cc_set`的函数,该函数会增加speed_driver_counter的count值,然后设置一个比较值,当count值达到比较值时,会触发另一个中断。同时,它还调用了一个名为`g_speed_driver_interval_timer_callback`的回调函数,该函数会处理瞬间功率事件。最后,它还检查了计数器是否溢出。
阅读全文