《2022年DSP常见错误 .pdf》由会员分享,可在线阅读,更多相关《2022年DSP常见错误 .pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1、仿真器驱动的问题。CCS 和仿真器驱动要装在同一路径下,最好都选择其默认的路径。有时,通过 usb20emurst.exe 检验到仿真器连接是好的,但打开CCS 时,仍然跳出窗口提示Can t initialize target CPU。还是因为仿真器驱动安装问题,先将仿真器换一个usb 接口试一下,如仍提示错误,则要重新安装驱动。2、CCS 配置。选择 C64xx XDS510 Emulator;Configuration File选择Auto-generate board data file with extra configuration项,C:tidriversSeedusb2.c
2、fg;I/O Port 0 x240;Startup GEL:C:ticcgelSEEDDM642.gel。3、编译错误:SEED301_AverageSmoothAverageSmoothloop2.jpt error:illegal relocation type 050002 found in section.debug_info,file 是因为 rts6400.lib库文件与 CCS版本不符。库文件要使用 CCS 安装文件夹自带的。4、编译错误:symbol xxx is defined multiple times.(1)因为库文件的问题,更改库文件;(2)是因为将本应该在incl
3、ude下的文件加在了 source 里。注意:在uCOS_II.c 文件里有 include语句,包括了 os_core.c、os_flag.c、os_mbox.c、os_mem.c、os_mutex.c、os_q.c、os_sem.c、os_task.c、os_time.c 文件,因而这些文件不需手动加入工程。5、编译错误:symbol xxx is undefined。出现 symbol 错误,一般都是因为库文件的问题。6、编译错误:fatal error:#error NO CHIP DEFINED 解决方法:build options-compiler-preprocessor-def
4、ine symbols:添加上实际的 DSP芯片的型号,本工程为 _DEBUG;CHIP_6416。7、endian 模式问题。little endian 和 big endian 是计算机字节顺序的两种格式,所谓字节顺序指的是长度跨越多个字节的数据的存放形式。little endian 把低字节存放在内存的低位;big endian将低字节存放在内存的高位。现在主流的 CPU,intel系列采用 little endian,motorola 系列的 CPU采用 big endian。本工程中使用的 C6416EVM,J25 脚为 endian 模式选择脚,开路为 little endian,
5、短路为 big endian,本工程选择 little endian模式。名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 3 页 -8、CDM 文件。CMD 文件是用来分配 ROM 和 RAM 空间的,告诉链接程序怎样计算地址和分配空间。CMD 给每个段分配地址,当想从一个段跳到另一个段时,就可以知道这个段的起始地址。CMD 文件包括两个部分:MEMORY和 SECTIONS。例:MEMORY PAGE 0:VECS:origin=00000h,length=00040h LOW:origin=00040h,length=03FC0h SARAM:origin=04000h,le
6、ngth=00800h B0:origin=0FF00h,length=00100h PAGE 1:B0:origin=00200h,length=00100h B1:origin=00300h,length=00100h B2:origin=00060h,length=00020h SARAM:origin=08000h,length=00800h SECTIONS .text :LOW PAGE 0.cinit:LOW PAGE 0.switch:LOW PAGE 0.const:SARAM PAGE 1.data :SARAM PAGE 1.bss :SARAM PAGE 1.stack
7、:SARAM PAGE 1 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 3 页 -.sysmem:SARAM PAGE 1 (1)系统定义:.cinit 存放 C程序中的变量初值和常量;.const 存放 C程序中的字符常量、浮点常量和用const 声明的常量;.switch 存放 C程序中 switch 语句的跳针表;.text 存放 C程序的代码;.bss 为 C程序中的全局和静态变量保留存储空间;.far 为 C程序中用 far 声明的全局和静态变量保留空间;.stack 为 C程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传递、存储局部变量和保存中间结果;.
8、sysmem 用于 C程序中 malloc、calloc和 realloc函数动态分配存储空间。(2)用户定义:#pragma CODE_SECTION(symbol,section name);#pragma DATA_SECTION(symbol,section name);另:CMD 文件中,可以不指定heap和 stack 的大小。编译的时候只会警告。CMD 文件中的注释只能使用/*,*/。9、打印数组时,printf(%c,buffi);10、CCS 中,unsigned short为 2 个字节,unsigned int为 4 个字节。11、文件中 include语句的使用。如果A include B,且 A、B属于同一文件夹,那就直接#include“B”;若 B在另一个文件夹里(例如 B在 my文件夹里),那就#include“.B”;若 A在文件夹里,而 B在文件夹外,则#include“.B”(注意点的个数)。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 3 页 -