Micrium uC/OS-II for STM32官方移植包的下载在:
http://www.micrium.com/st/STM32.html
但这个移植包里有一点问题,主要是上下文切换函数OSCtxSw和OSIntCtxSw里没有保护R4和R5寄存器的值,详见dy008的帖子里跟帖的讨论。
Micrium官方已经出过一个修正(AN-1018),大概大家都没注意到。可以看一下AN-1018: uC/OS-II and the ARM Cortex-M3 Processors
在:http://www.micrium.com/arm/
修正后的uC/OS-II Port里,OSCtxSw和OSIntCtxSw里都改用R0和R1,免除了保护R4和R5的麻烦,而且提高了任务切换的效率。
用这个修正包里的SoftwareuCOS-IIPorts目录下的4个文件更新一下旧文件,问题就解决了。 |