软件定时器的用法
- 声明定时器参数和函数 在程序.c文件中先声明如下:
static void app_timer_handler(void const *param); //定时回调函数
static osTimerId app_timer = NULL; //定时器实例
osTimerDef (APP_TIMER, app_timer_handler); //参数1定时器名称, 参数2定时回调函数
#define TIMING_CYCLE_INTERVAL 1000 //定时时间,单位ms
- 创建定时器
void user_timer_init(void)
{
app_timer = osTimerCreate(osTimer(APP_TIMER), osTimerOnce, NULL);
}
- 开启和关闭定时器=
osTimerStop(app_timer); //参数1已创建的定时器实例
osTimerStart(app_timer, TIMING_CYCLE_INTERVAL); //参数1已创建的定时器实例 参数2定时时间
- 编写定时回调函数
static void app_timer_handler(void const *param)
{
//todo......
osTimerStart(app_timer, TIMING_CYCLE_INTERVAL); //重新打开定时器
}