您的位置:首页 > 其它

《μCOS-III源码分析笔记》学习笔记|2|第三章时间管理

2017-03-11 21:18 225 查看
第3章时间管理

3.1时间管理API



3.2API原理

OSTimeDly()和OSTimeDlyHMSM()的原理都是根据任务和其需要延时的节拍,调用OS_TickListInset()来讲该任务插入到时钟节拍轮(OSCfg_TickWheel[] 详见上章)中,并把该任务从就绪队列中脱离。

之后每个时钟节拍都会判断任务延时是会否结束,结束了就把任务脱离时钟节拍轮,进行下一步操作。

OSTimeDlyResume()则是在延时没有结束之前,强行将任务脱离时钟节拍轮,进行下一步操作

OSTimeGet()和OSTimSet()则是对OSTickCtr(时钟节拍计数,随着时间累加,上章提到过)进行相应操作。

3.3细节重点

3.3.1周期延时和相对延时

相对延时,在CPU负担过重的时候,可能会造成节拍延时误差

周期延时则不会

3.3.2延时理论最长时间

49天
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  时间管理 源码 uCOS3 os