FreeRTOS软件定时器编程教程

FreeRTOS软件定时器编程教程,第1张

本质

软件定时器本质上是一个周期性的任务或单次执行任务。
 

第一步:宏配置

使用软件定时器需要在FreeRTOSConfig.h先配置, 需要注意的是优先级和堆栈,这几个数据要根据具体情况具体设置。

#define configUSE_TIMERS 1// 使能软件定时器
#define configTIMER_TASK_PRIORITY 1// 确定软件定时器进程优先级(根据具体应用而定,不要设的过低,否则精度也会随之下降)
#define configQueue_LENGTH 10// 定时器命令队列(TImer Command Queue)长度
#define configTIMER_TASK_STACK_DEPTH 512// 分配给软件定时器任务的内存大小

第三步:使用API函数

这些API函数就可在应用层调用了,具体的函数参数和使用参加官网的文档说明,里面有很好的介绍,这里就没必要说明了
xTimerCreate();
xTimerlsTimerActive();
xTimerStart();
xTimerStop();
xTimerChangePeriod();
xTimerDelete();
xTimerReset();
xTimerStartFromISR();
xTimerStopFromISR();
xTimerChangePeriodFromISR();
xTimerResetFromISR();
xTimerGetTimerID();
xTimerGetTimerDaemonTaskHandle();

参考例程

在FreeRTOS的源代码的Demo中有提供具体例子,把相关文件加入工程就可使用的。文件名与位置如下:
文件名:TimerDemo.c与TimerDemo.h
文件位置:FreeRTOSDemoCommonMinimal与FreeRTOSDemoCommoninclude

工程参考目录

FreeRTOS软件定时器编程教程,FreeRTOS软件定时器编程教程,第2张

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2607245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存