【已解决】求助:关于用keil uVision4编译器编译ARM9架构uCOS的问题
[复制链接]
先说明一下我的问题:
我用的Keil uVision4编译器编译从uC官网上下的基于AT91SAM9263处理器的uC/OS-ii源代码的,编译的时候出现了问题,我先把源代码贴到下边:
我的问题是:在源代码中所有前面加了"_arm"的语句都会报下面的错误:
uC_SAM9263\..\uCOS_II\..\uC_SAM9263\os_cpu.h(185): error: #169: expected a declaration
把“_arm”去掉之后再编译就没有这个问题了,想请教一下这样做有什么影响?会不会导致系统崩溃?或者说怎么解决这个问题?
是不是我用的编译器的问题?
********************************************************************************************************* * PROTOTYPES ********************************************************************************************************* */
#if OS_CRITICAL_METHOD == 3 __arm OS_CPU_SR OS_CPU_SR_Save(void); /* See OS_CPU_A.ASM */ __arm void OS_CPU_SR_Restore(OS_CPU_SR cpu_sr); #endif
__arm void OS_CPU_SR_INT_Dis(void); __arm void OS_CPU_SR_INT_En(void); __arm void OS_CPU_SR_FIQ_Dis(void); __arm void OS_CPU_SR_FIQ_En(void); __arm void OS_CPU_SR_IRQ_Dis(void); __arm void OS_CPU_SR_IRQ_En(void);
#if OS_CPU_FPU_EN > 0 void OS_CPU_FP_Init(void); /* See OS_CPU_C.C */ __arm void OS_CPU_FP_Restore(void *pblk); __arm void OS_CPU_FP_Save(void *pblk); #endif
__arm void OSCtxSw(void); __arm void OSIntCtxSw(void); __arm void OSStartHighRdy(void);
void OS_CPU_InitExceptVect(void);
__arm void OS_CPU_ARM_ExceptResetHndlr(void); __arm void OS_CPU_ARM_ExceptUndefInstrHndlr(void); __arm void OS_CPU_ARM_ExceptSwiHndlr(void); __arm void OS_CPU_ARM_ExceptPrefetchAbortHndlr(void); __arm void OS_CPU_ARM_ExceptDataAbortHndlr(void); __arm void OS_CPU_ARM_ExceptAddrAbortHndlr(void); __arm void OS_CPU_ARM_ExceptIrqHndlr(void); __arm void OS_CPU_ARM_ExceptFiqHndlr(void);
void OS_CPU_ExceptHndlr(INT32U except_type);
#if OS_CPU_INT_DIS_MEAS_EN > 0 void OS_CPU_IntDisMeasInit(void); void OS_CPU_IntDisMeasStart(void); void OS_CPU_IntDisMeasStop(void); INT16U OS_CPU_IntDisMeasTmrRd(void); #endif
#if OS_CPU_ARM_DCC_EN > 0 void OSDCC_Handler(void); #endif
#endif
[ 本帖最后由 ChinaLingBo 于 2011-12-22 14:37 编辑 ]
|