nrf52810中定时器的实现主要分为三部分也就是三个函数来完成:
1.app_timer_create();创建定时器函数
2.app_timeout_handler();定时器超时函数
3.app_timer_start();启动定时器函数
流程
1.首先需要定义一个APP定时器
APP_TIMER_DEF(my_timer_id));
2.创建APP定时器
err_code = app_timer_create(&my_timer_id,APP_TIMER_MODE_REPEATED,app_timeout_handler);
参数1:定义的APP定时器,相当于一个ID号;参数2:定时器执行方式,定时器每次到期后重新启动还是只执行一次;参数3:定时器超时后的回调函数
3.超时事件处理
void app_timerout_handler()
在此次函数中可以处理定时器超时之后所要实现的功能
4.启动定时器
app_timer_start(my_timer_id,TIME,NULL)
TIME是定时时间,在此函数中会有最大定时时间和最小定时时间的限制,如果所定时的时间大于或者小于限定的时间,可以在此函数中修改(if(timeout_ticks < APP_TIMER_MIN_TIMEOUT_TICKS) || (timeout_ticks > MAX_RTC_COUNTER_VAL))的判断语句。