k64 发表于 2017-6-6 16:13:35

freertos定时执行任务

freertos如何周期性的执行一个任务,比如200ms调用一次任务, 用定时器发消息?有没有一个函数能直接实现

adlu 发表于 2017-6-6 17:09:12

如果是非精确延时的周期任务,在该任务中插入osDelay(200);就可以了。
如果要精确一点的,可以使用软定时器实现。
或者在任务中使用二值信号量,在硬件定时器中断中发送该信号量。

周期任务建议使用软定时器+回调函数实现。
可参考以下链接中的第七篇笔记
https://www.stmcu.org.cn/module/forum/thread-607776-1-1.html

k64 发表于 2017-6-7 13:37:28

谢谢,软件定时器不错, 看到过TI的还是那个公司的协议栈,有一种函数可以注册定时任务,类似这样的
regeister_task(task,id,time)
页: [1]
查看完整版本: freertos定时执行任务