打印

基于V7的uCOS-III动态时钟管理方案例程,用于低功耗,含IAR以及MDK的AC5和AC6版本

[复制链接]
404|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
白鹭hu|  楼主 | 2018-8-3 11:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
模板例子:
V7-uCOS-III动态时钟实现(含MDK的AC5和AC6以及IAR).rar (3.10MB)

1、MDK使用MDK5.26及其以上版本。
2、IAR使用IAR8.30及其以上版本。
3、由于Mircium当前仅提供了IAR的底层移植文件,参考修改制作了个MDK版本的。
4、新版的底层移植文件比较好用,支持M3,M4和M7,含浮点支持。
5、制作了一个滴答定时器和PendSV中断入口汇编文件os_cpu_isr.asm,以后不用繁琐的修改启动文件的中断入口函数名,直接添加此贴文件即可。
6、新版的中断管理分为Kernel Aware和Non-Kernel Aware
(1)Kernel Aware 表示受到uCOS-III管理的中断服务程序。
(2)Non-Kernel Aware 表示不受管理的中断服务程序,中断使用跟裸机一样,但不可调用uCOS-III的API。
7、uCOS-III进入V3.07.00版本后与之前的版本变化较大,确切的说是更好用了。新的内核部分越来越向uCOS-II靠拢,之前臃肿的功能和不合理方案都已经放弃。
uCOS-III刚推出的时候,搞了不少功能,什么中断延迟提交,多事件等待,专门搞一个滴答定时器任务等新功能。升级到当前的V3.07.00后,都被干掉了,不实用。
8、动态时钟管理用的TIM5实现,Micrium文档:
Part1:AN-Dynamic-Tick-BSP.pdf
Part2:AN-Dynamic-Tick-Optimization-V1.0.pdf

这里的动态滴答模式类似RTX,FreeRTOS的tickless,都是用于低功耗的。
正常滴答和动态滴答的效果对比:



uC/Probe

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

396

主题

396

帖子

0

粉丝