关键词不能为空

当前您在: 主页 > 英语 >

ccs编译错误

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-16 12:59
tags:

-

2021年2月16日发(作者:williams)


1


、报错如下:



-------------------------



- Debug



-------------------------


[Linking...]



>> 28335_RAM_:




error: system error, can't open file '/.obj' for input:

































No such file or directory




>> Compilation failure




Build Complete,




2 Errors, 0 Warnings, 0 Remarks.


解决方法



是修改了

< br>CMD


文件,看来它的确不能动,我只是做了一些注释,网上说

< br>CMD


里面不能用



注释。





2


、报错





解决



最后一行后多加几个回车键,不要不光标放在最后一行。





3



Include Search Path



C:CCStudio_v3.3MyProje ctsDSP2833x_commoninclude;C:CCStudio_v3.3MyProject sDSP2


833x_headersinclude




4




注意添加


rts2800_



GlobalVariableDefs.c




5




那应该 找到原因了


,ADC_cal


这个函数是默认在


ROM


里的


,


看下面的


CMD:





/* Allocate ADC_cal function (pre-programmed by factory into TI reserved memory) */





.adc_cal






: load = ADC_CAL,




PAGE = 0, TYPE = NOLOAD




6









原因是我没有加


DSP281x_D efaultIsr.h


所以不行的。





7




返回的数据只有一个,而且乱码。



解决:


ENA=1;





8







error: symbol _InitGpio is defined multiple times:














C:C CStudio_v3.3MyProjectstam2013010901DebugDSP2833x_


and C:CCStudio_




解决:删除


DSP2833x_Gpio.c




9




undefined

























first referenced



symbol































in file


---------

























----------------


_XINT7_ISR
























C:CCStudio_v3.3 MyProjectstam2013010901DebugDSP2833x_


_ECAN1INTA_ISR




















C:CCStudio_v3.3MyProjectstam2013010901Deb ugDSP2833x_


_USER10_ISR


























解决: 添加源文件


DSP2833x_DefaultIsr.c




10


、变量修饰符



static



修饰变量,函数。作用域:变量仅仅在本文件可见,函数在本文件可以被调用。


st atic


在函


数内部定义的话,分配在堆中,数值保存在


data


段,而不是在栈中,而且只赋值一次。




extern



修饰变量,


函数。


修饰变量时候,


变量的声明在外面,


修饰函数的时候,


如果函数已经声明,


则作用不是很大。




const




修饰变量,函数。修饰变量时候,不能被重复赋值,只能放在只读段中。修饰函数时候,表

明函数的返回值必须为常数。



volatile




volatile


最初的意思是表示汽油容易挥发,



c


中的作用大概有两点



1



表示变量是易失的,


易 变的。



2


)强制访存操作,防止编译 器去优化,告诉编译器每次必须去内存中取值,而不


是从寄存器或者缓存。





11


、注意





= 0xFFFFFFFF;







// GPIO32-GPIO63 are inputs



寄存器


GPBDIR



32


位的,需要


8


个字母配置 。



GPI



Ctrl


寄存器都需要


EALLOW



EDIS


保护。



12




DS P



lib



今天在群里讨论了关于


lib


,受益匪浅,类似的把东西总结一 下,希望以后大家遇到这样的


问题后,能很容易的解决。在此也练一下笔法,从小就讨厌 写东西,今天试一试,有不足之


处还请大家见谅。










帮助留 的第二个问题,


我们好多学员都在群里讨论了,


收获很多,


我就把讨论的内容和论坛


上以前别人发的一部分内容总结的写一下。




.lib


文件是库文件,寄存器地址和对应的标示符定义都包含在这个库里面了,里面包括标


准 的


C/C++


运行支持库函数,浮点运算程序,系统启动程序< /p>


_c_int00


等,这些库中也包括


由汇编实现的子程序,


可以在汇编中调用,


比如除法子程序



FD$$$$DIV


等。

从编程的角度讲,


通常有静态库文件和动态库文件。静态库文件就是


.lib


文件,动态库文件就是


.dll


文件。内


容一样,


都是将函数封装在一起编译后供自 己或他人调用。


好处在于编译后的库文件看不到


源代码,可保密 ;同时不会因为不小心修改了函数而出问题,便于维护。






两种库的区别在于静态库被调用时 直接加载到内存,


而动态库再是在需要的时候加载到内


存,不使 用的时候再从内存释放。




对于


dll



lib


的 解释,


002+


吻之龙


<


longzebiao@


>


给出了相信的解释



(1)lib


是编译时需要的,


dll


是运行时需要的。



如果要完成源代码的编译,



lib


就够了。




果也使动态连接的程序运行起来,有


dll

就够了。




在开发和调试阶段,当然最好都有。




(2)


一般的动态库程序有


lib< /p>


文件和


dll


文件。

lib


文件是必须在编译期就连接到应用程序中


的,而


dll


文件是运行期才会被调用的。如果有


dll


文件,那么对应的


lib


文件一 般是一些索


引信息,


具体的实现在


dl l


文件中。


如果只有


lib

< p>
文件,


那么这个


lib


文 件是静态编译出来的,


索引和实现都在其中。静态编译的


lib


文件有好处:给用户安装时就不需要再挂动态库了。


但也有缺点 ,就是导致应用程序比较大,


而且失去了动态库的灵活性,


在版 本升级时,


同时


要发布新的应用程序才行。


(3)


在动态库的情况下,有两个文件,一个是引入库(


.LIB


)文件,一个是


DLL


文件,引入


库文件包含被


DLL


导出的函数的名称和位置,


DLL


包含实际的函数和 数据,应用程序使用


LIB


文件链接到所需要使用的

< p>
DLL


文件,


库中的函数和数据并不复制到可执行 文件中,


因此


在应用程序的可执行文件中,存放的不是被调用的 函数代码,而是


DLL


中所要调用的函数


的内存地址,这样当一个或多个应用程序运行是再把程序代码和被调用的函数代码链接起


来,


从而节省了内存资源。


从上面的说明可以看出,


DLL



.LIB


文件 必须随应用程序一起发


行,否则应用程序将会产生错误











当你打开


ccs


里的库文件函数时你就会发 现有好多个库文件函数,不知道怎么用,


我查了好多资料,也没查出个什么来,只查到了 这些感觉有用的



For C28x these libraries can be built:'



? (C/C++ run-time object library)



rts2800_ (C/C++ large memory model run- time object library)



? rts2800_ (C/C++ run-time object library with exception handling support)



? rts2800_ml_ (C/C++ large memory model run-time object library with exception


handling support)!



? rts2800_ (C/C++ run-time object library for FPU targets)



?


rts2800_fpu32_


(C/C++


run-time


object


library


for


FPU


targets


with


exception


handling support)



当你把别人的东西拷到你的电脑后,运行时就会出现错误,提示



.Oundefined

























first referenced



symbol































in file' x0



---------

























----------------



FS$$$$MPY



























C:dspprogpioDebugDSP28_



FS$$$$TOL



























C:dspprogpioDebugDSP28_



-


-


-


-


-


-


-


-



本文更新与2021-02-16 12:59,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/658753.html

ccs编译错误的相关文章