ucos-II在ARM7上的移植(3)

2019-01-19 12:35

栈顶指针

MSR cpsr_cxsf, r4 ;从堆栈中恢复中断前任务的cpsr,注意此时irq才被重新允许

LDMFD sp!, {r0-r12,lr,pc} ;恢复中断前任务的 r0-r12,lr和pc,返回被中断的任务

;******OSTickISR函数代码完成,下面是临界段代码前后开关中断的函数******

EXPORT ARMDisableInt ARMDisableInt

MRS r0, cpsr ;由于任务和内核都运行在svc模式下,因此可方便地操作cpsr STMFD sp!, {r0} ; 保存当前的cpsr ORR r0, r0, #0xc0 ;屏蔽FIQ,IRQ中断 MSR cpsr_c, r0 ;回写cpsr,只屏蔽IRQ中断 MOV pc, lr ;返回 EXPORT ARMEnableInt

ARMEnableInt ;必须和ARMDisableInt成对使用

LDMFD sp!, {r0} ;弹出在ARMDisableInt中被保存的cpsr MSR cpsr_c, r0 ;恢复关中断前的cpsr MOV pc, lr ;返回 END ;汇编代码结束

;*****OS_CPU_A.S文件结束****** 4 小结

这里较详细地叙述了轻量级的实时内核μC/OS-II在ARM7处理器(S344B0X)的移植过程,并给出了简练而实用的代码,移植代码和移植思想对于μC/OS-II在其他ARM处理器上的移植具有较强的借鉴意义。


ucos-II在ARM7上的移植(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:03优秀孩子是怎样训练出来的

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: