μC/OS最新版本的例程中,官方都不在提供用于Keil、与CPU相关的汇编文件。所以就获取IAR中的port文件,修改后适用于Keil。
下面就把Keil和IAR中,汇编文件中的不同做一些罗列。以下汇编指令的介绍,更偏重μC/OS中用到的指令,其他未用到的就不提及了。
1. 外部函数引用
Keil
IMPORT
IAREXTERN
2. 内部函数声明
Keil
EXPORT
IARPUBLIC
3. 段和区域的描述
; Keil
AREA |.text|, CODE, READONLY, ALIGN=2
THUMB
REQUIRE8
PRESERVE8
; IAR
RSEG CODE:CODE:NOROOT(2)
THUMB
4. 编译宏开关控制
Keil
IF {FPU} != "SoftVFP"
EXPORT OS_CPU_FP_Reg_Push
EXPORT OS_CPU_FP_Reg_Pop
ENDIF
IAR
#ifdef __ARMVFP__
PUBLIC OS_CPU_FP_Reg_Push
PUBLIC OS_CPU_FP_Reg_Pop
#endif