FreeRTOS - 定时器使用注意
注意 定时器 freeRTOS 使用
2023-09-11 14:19:53 时间
1、只有进入定时器守护任务,从定时器命令队列取出命令,队列空间才会空出一个可用空间;所有定时器共用一个定时器队列
2、如果使用软件定时器,在调度器开始前,会自动创建一个定时器守护任务,configTIMER_TASK_STACK_DEPTH和configTIMER_TASK_STACK_DEPTH用于设置这个守护任务的栈大小和任务优先级,各个定时器的回调函数是定时器守护任务调用的函数;哪个定时器定时时间到就执行哪个定时器回调函数,如果某个回调函数调用可能导致阻塞的函数,就会影响其他回调函数的调用周期,所以不建议在回调函数调用可能导致阻塞的函数,并且回调函数执行周期尽可能的短
3、定时器守护任务进入准备态的条件:定时器命令队列非空,或者定时器定时时间到
4、因为发送给定时器命令队列的命令包含时间戳(time stamp,用来记录调用命令和命令被定时器守护任务处理的时间段),所以一调用xTimerStart(...)函数,定时器就开始计时,而不是等到进入定时器守护任务执行“开始命令”才计时,其他命令效果一样,比如重启定时器、改变定时器周期。
5、void vApplicationTickHook( void )也可以作为定时器回调函数使用,周期是一个tick period。
相关文章
- 使用C++的函数memset()时要注意它的操作对象是每一个字节
- 容易被忽略的数据仓库测试,应该注意些什么?
- JS的注意点
- 当js中的for循环遇到延时器或者定时器时需要注意的问题(这里有个大坑)
- 网站建设和网站运营需要样注意什么?
- 血的教训!雨天用车务必注意这几点
- 使用feign调用服务的时候注意的问题
- 注意!LTE正在进入IoT领域
- STM32L011D4 ----- 使用注意
- 前台页面验证中需要注意的一个与VARCHAR2(N BYTE)和VARCHAR2(N CHAR)的小细节
- 睡凉席一定注意这些,不然肠子都要悔青了!
- 利用VMware克隆linux虚拟机需要注意的事项
- 【转】从QDataStream向QByteArray中写入数据时的注意点(QT)