头文件#include "freertos/timers.h"总体过程:申请→启动→定时 0.初始化/注册:
Delay_Turnoff_timer_init();
Delay_Turnoff_timer_init();函数内容:
static void Delay_Turnoff_timer_init(void)
{
xTimer_delay_turnoff = xTimerCreate("delay_turn_off_light",
pdMS_TO_TICKS(10000), //这边设置定时的时间
pdFALSE,
(void *) 1,
vtimer_delay_callback);
}
TimerHandle_t xTimer_delay_turnoff = NULL;2.给定时器申明一个指针变量xTimer_delay_turnoff,后面注册和启动,停止都会用到。
3.在所要开始定时的位置
xTimerStart(xTimer_delay_turnoff,0);4.回调函数中处理内容
static void vtimer_delay_callback(xTimerHandle pxTimer)
{
}
5. 结束软件定时
xTimerStop(xTimer_delay_turnoff,0);
参考总结:
1.FreeRTOS一天一个小知识之任务延时函数vTaskDelay_simplemethane的博客-CSDN博客_vtaskdelay最小间隔多少
2.个人笔记--FreeRTOS软件定时器_未来可期-CSDN博客_freertos定时器



