uC/OS-III实时内核V3.02.00更新说明

需积分: 9 0 下载量 55 浏览量 更新于2024-07-22 收藏 2MB PDF 举报
"ARNV7数据手册" 这篇文档是关于Micrium公司的uC/OS-III实时内核的一个更新日志,详细列举了不同版本中的修正和改进。uC/OS-III是一个针对嵌入式系统的实时操作系统内核,适用于包括ARM在内的多种架构。在V3.02.00版本中,进行了多项错误修正和功能优化,例如: 1. 修复了在OSMemCreate函数中的指针到整型转换问题。 2. 修正了os_cfg_app.c文件中常量初始化的无效类型转换。 3. 添加了在调用OS_SAFETY_CRITICAL_EXCEPTION()宏后立即返回的语句,提高了安全性。 4. 优化了OS_TmrLink()函数,使其能在定时器链表中间添加对象。 5. 修复了OS_TmrResetPeak()函数重置最大条目数的问题。 6. 在OS_TmrLink()和OSTmrStart()中使用OS_OPT_LINK_DLY选项时,增加了使用说明。 7. 修改了在插入时的时钟轮操作顺序,先设置新对象的链接指针,然后将其添加到链表。 8. 修正了OS_FLAG_POST_NO_SCHED选项在OSFlagPost和OSFlagPendAbort中的使用。 9. 在其他任务之前初始化中断队列处理任务,以防止使用未初始化的OSIntQNbrEntries。 10. 优化了OSCfg_ISRStk变量的使用。 11. 默认情况下将OS_CYCLES设置为32位。 12. 修正了每个任务CPU使用统计的计算方法。 13. 更新了版本号格式为Vx.yy.zz。 14. 移除了OS_TMR_TICK数据类型,将OSTmrTickCtr转换为OS_TICK,与其他OS_TMR结构字段保持一致。 15. 防止在中断服务程序中调用OSSchedLock/Unlock()。 16. 重新排列了OS_TCB数据结构成员的顺序,将非可选项放在结构的开头。 17. 将错误代码改为枚举类型。 18. 使用CPU_TYPE_CREATE转换OS对象类型。 19. 重构了不允许创建多个优先级与空闲任务相同的任务的检查。 20. 修正了在OSMemCreate()中的对齐检查,以处理sizeof(void *)等于1的情况。 21. 添加了允许字地址架构的优先级处理变化。 22. 更新了源代码可用分发的文件头版权信息。 在V3.01.2版本中,也有一些重要的修改,如错误检查时间戳配置定义、删除MISRA C 2004错误、修复OS_MEM结构定义、调整OSInitHook()的位置、修复OS_TickListRemove()的重复调用等问题。这些更新确保了软件的稳定性和兼容性。 同时,文档还引用了ARM Limited的ARMv7-M架构应用级参考手册,这是ARM处理器的一种架构规格,适用于微控制器应用。该手册提供了有关ARMv7-M架构的详细信息,包括指令集、内存模型以及编程接口等,是开发基于ARM Cortex-M系列处理器的嵌入式系统的重要参考资料。