新手求助,关于CCS编译出错

2019-03-26 17:03发布

大家好,最近我主要在尝试把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,希望各位大侠们看下,小弟先谢过了~~ 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
gaoxiao
1楼-- · 2019-03-26 21:24
< 注释的时候出错了,不支持多行注释的,括号不匹配啊!!!
注释的放在一行整理一下!!!
gaoxiao
2楼-- · 2019-03-27 00:32
< if (OSIntNesting > 0) {                  // line 181         /* Prevent OSIntNesting from wrapping       */
这样试试看!!!
flyingdsp
3楼-- · 2019-03-27 01:50
从你的C看 就是语法错误!!
你可以添加一个 }或者减少一个{,看你想执行的意思!
btw:一个是C语言不熟,一个是写的C语言不规范。建议加强这两个问题,以后像这些小问题就不会问别人了
Kursk
4楼-- · 2019-03-27 04:46
 精彩回答 2  元偷偷看……
Kursk
5楼-- · 2019-03-27 09:27
问题找到了:
UCOS-II中的OS_ENTER_CRITICAL() 是关中断的相关代码,一般会在OS_CPU.H头文件中有所定义,具体定义要看你的移植平台的指令结构之类之类的
然后我原来用的指令竟然是X86平台的,于是出现了expected an asm string.....
我果然是个纱布....:(

一周热门 更多>