移植好的IAR520_STM32_uCOS-II V2.86代码
发布时间:2009-11-26 17:56
发布者:诸葛孔明
移植好的IAR520_STM32_uCOS-II V2.86代码 |
-
-
IAR_STM32_uCOS-II+V2[1].86.rar
1.98 MB, 下载积分: 积分 -1
移植好的IAR520_STM32_uCOS-II V2.86代码 |
IAR_STM32_uCOS-II+V2[1].86.rar
1.98 MB, 下载积分: 积分 -1
多谢共享 |
巨好的东西,收了。 |
收下了,谢谢共享! |
LZ,我看了一下.ASM 文件,查阅了一些代码后,发现执行 OSStartHighRdy 多任务开始运行程序后,PSP堆栈指针设置为0,并触发了一次PSV;然后在OS_CPU_PendSVHandler 中断服务程序中有句: CBZ R0, OS_CPU_PendSVHandler_nosave ( PSP如果是0,标示任务没有运行过,那么不需要压栈)。这里我不太明白,如果PSP=0,那么中断时硬件进栈的几个寄存器压到哪里了(堆栈从高地址往低地址生长)。ARM手册说异常时使用MSP,进程时使用PSP,PSV 应该属于异常,理应采用的是MSP,硬件压栈的几个寄存器存在MSP指针下的内存,然后我们手工进栈的是调整为PSP指向的内存,那这样一个任务的寄存器没法连续存储在内存里了。我还不是很清楚ARM的两个堆栈切换工作过程,麻烦LZ不惜赐教,谢谢! |
好东西分享 谢谢了 |
好东西,谢谢分享 |
jbajbakan |
学习了 |
好东西,谢谢分享 |
学习参考 |
thanks for sharing |
收藏 |
感谢分享啊 |
感谢分享,下载学习学习! |
网友评论