小弟近来在移植cosii到str71x,参考其他高手的移植实例,一直没有移植成功,
总是在执行 msr cpsr_c ,r0 指令时遇到问题,
就是这句话执行完后,cpu 状态寄存器未发生任何变化
附件是我的整个源程序,编译环境是keil4,高手帮忙分析一下,看问题出在哪儿了??
希望高手帮帮小弟了,先谢谢各位了!!!!
我没有搞操作系统,但看到这个标题觉得不舒服。---并不是想下功夫学操作系统来回答楼主的问题。
我也写过简单的调度器,也遇到过一些问题,但没有遇到你这样的问题。建议你在调试模式下,加断点到这句话前,监视CPSR,看看是什么模式下,如果是在usr模式下,这句话是不能执行的。如果是在其他模式下,这句话是可以执行的,那你需要看看r0里面存的低5位里面是不是你想切换过去的模式,如果不是,往前追踪,查清楚真正导致出问题的指令一定是在前面,只是在这里暴露出来了。
我也遇到一个问题,我学uCOS ii ,也是Keil 编译器,没有搞懂的是系统时钟中断是在哪里调用的!比如51系列,在Keil里就有一个中断号什么的来判断,那么ucos ii 应该是如何的呢?