大家好,最近我主要在尝试把UCOS-II移植到DSP C6701平台上,使用的是UCOS-II V2.52的源代码,在创建工程之后直接将一些代码添加了进去,然后再用CCS进行编译,然后出现了N多对源代码报错的情况
大致都是这样的:
OS_CORE.C 部分源代码:
if (OSRunning == TRUE) {
OS_ENTER_CRITICAL(); //
这里是line 180
if (OSIntNesting > 0) { //
line 181 /* Prevent OSIntNesting from wrapping */
OSIntNesting--;
}
对第180行和181行报错如下:
[OS_CORE.C] "E:CCStudio_v3.3C6000cgtoolsincl6x" -g -fr"E:/CCStudio_v3.3/MyProjects/C6701/Debug" -d"_DEBUG" -mv6700 -@"Debug.lkf" "OS_CORE.C"
"OS_CORE.C", line 180: error: expected a "("
"OS_CORE.C", line 181: error: expected an asm string
"OS_CORE.C", line 181: error: expected a ";"
是不是应该对编译器进行相关的设定?我初学DSP,希望各位大侠们看下,小弟先谢过了~~
此帖出自
小平头技术问答
注释的放在一行整理一下!!!
这样试试看!!!
你可以添加一个 }或者减少一个{,看你想执行的意思!
btw:一个是C语言不熟,一个是写的C语言不规范。建议加强这两个问题,以后像这些小问题就不会问别人了
UCOS-II中的OS_ENTER_CRITICAL() 是关中断的相关代码,一般会在OS_CPU.H头文件中有所定义,具体定义要看你的移植平台的指令结构之类之类的
然后我原来用的指令竟然是X86平台的,于是出现了expected an asm string.....
我果然是个纱布....:(
一周热门 更多>