使用CCS5编译工程时出现错误 unresolved symbol _ADC_cal, first referenced in ./DSP2833x_SysCtrl.obj
1:Severity and Description Path Resource Location Creation Time Id
errors encountered during linking; "timer_sdram.out" not built
Severity and Description Path Resource Location Creation Time Id
unresolved symbol _ADC_cal, first referenced in ./DSP2833x_SysCtrl.obj
出现这样的问题,通常是少了一些文件,需要手动添加这些文件到工程里
解决的方法是:在工程上右击links files to project,之后找到DSP2833x _ADC_cal.asm
文件添加到工程里
2:当我在用到软件中自带的头文件中的一些结构体,共用体。说白了就是要对芯片寄存器
的位进行操作时软件给我们提供了方便,如果不能 “.” 符号不能灵活弹出对应选项时,例如
CpuTimer0Regs.TCR.all,应该检查CpuTimer0Regs是否敲写正确,应该编译一下工程,
我的做法就是写一个头文件,和主函数,并在函数里写一个InitSysCtrl();(当然前提你的头文件要
有定义这个函数)在编译。
3:在学习中遇到了在工程中不用添加头文件,有软件来自动查找,就是得先设置Properties选项,指定头文件的路径,
在这之前我一直都是手动添加头文件,很是麻烦,对于不太熟练的我还容易出错,
4:还要注意要将我们写的程序中用到的源文件全部添加到工程中(这句话听起来好像没说似的,其实不然),
如果我们平时在编写程序时,不注意他,他经常会给添加不必要的麻烦(说白了就是在浪费你的时间)
5:
我在主函数里用到(“MemCopy(&XintffuncsLoadStart, &XintffuncsLoadEnd, &XintffuncsRunStart);”)
编译时出现下列错误提示:
unresolved symbol _MemCopy, first referenced in ./timer_sdram.obj
这样的问题一看就是MemCopy这的问题,
1-可能是在你调用前没有声明,在工程中没有添加这个函数
2-我们在用到这个MemCopy时拼写错误
自己在学习DSP中,在看过的一些书上有的说过在自己编写工程时不清楚自己工程里要用到
什么源文件可以把他们都添加到工程里,今天就出现了问题,由此想起了“尽信书不如无书”
6:
errors encountered during linking; "cpu_flash1.out" not built
placement fails for object ".text", size 0x1091 (page 0). Available ranges: RAML1
出现这样的错误是因为自己多添加了“DSP2833x_ECan.c”这个文件
7:
errors encountered during linking; "cpu_flash1.out" not built
symbol "_delay_loop" redefined: first defined in "./cpu_flash.obj"; redefined in "./DSP2833x_Mcbsp.obj"
我的这个程序是对FLASH进行读写操作,正如提示我多加了“DSP2833x_Mcbsp.h”源文件出现了错误