https://blog.csdn.net/sinat_37710872/article/details/82690391
准备:CCS5.5.0,F28335开发板,电源线,仿真器
在程序调试阶段,程序烧写到RAM,配合仿真器对程序进行调试。
首先,(1)在Properties(性质)—General中,设置Debug为Active;
(2)在Linker command file中选择28335_RAM_Ink.cmd(存储空间分配);
(1)准备
在Workspace新建文件夹Project,在文件夹下拷入文件“DSP2833x_common”和DSP2833x_headers" 文件。
(2)新建工程
Project → New CCS Project,填写工程名称如Exam_F28335_ADC_SeqModeTest,选择设备型号。
从DSP2833x_headers\cmd中拷贝DSP2833x_Headers_nonBIOS.cmd到Exam_F28335_ADC_SeqModeTest文件夹下,并新建一个Source文件夹,保存源文件。
(3)设置头文件索引路径
右键点击工程名,选择Properties,在C2000 Complier下的Include Options,添加
"${PROJECT_ROOT}\..\DSP2833x_headers\include"
"${PROJECT_ROOT}\..\DSP2833x_common\include"
点击OK后,工程文件的Include栏中有添加的索引路径,如下图说明添加成功(失败,则为灰色)。
新建工程已已包含include文件,还需要再添加一个xdais文件。
(4)配置仿真器
右键点击工程名,选择NEW → Target Configuration File,设置File Name
点击Finish出现如下界面,选择仿真器型号XDS100V3,器件型号选择TMS320F28335,点击右侧Save,保存配置。
可以点击Test Connection测试仿真器是否连接成功,见调试部分。
(5)添加源文件
复制需要的.c及.asm文件到source文件夹,复制到文件夹中后会自动出现在工程列表中。
一般有DSP2833x_common\source中的
DSP2833x_ADC_cal.asm 汇编程序ADC_cal是官方编写的ADC校验程序,用特定的校准数据初始化ADCREFSE和
ADCOFFTRIM寄存器。在使用ADC前要声明ADC_Cal(),并且在使用ADC_Cal()前要使
能ADC高速时钟。(.asm汇编语言文件扩展名)
DSP2833x_CodeStartBranch.asm DSP2833x_CodeStartBranch.asm中有codestart段的定义,实际上codestart段 只是包含了一个跳转指令,使程序跳转到_c_int00处,_c_int00在boot.asm in RTS library中有定义,_c_int00的代码最终会调用c的main函数,之后就是main 函数的执行。
boot后重新定位,code_start段在boot后第一个被执行。Branch for redirecting code execution after boot. DSP reset后运行的起始地址是0x3FFFC0
DSP2833x_usDelay.asm 延时X微秒,#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L)
DSP2833x_DefaultIsr.c DSP2833x_Gpio.c
DSP2833x_SysCtrl.c
以及DSP2833x_headers\source中的DSP2833x_GlobalVariableDefs.c
如果用到定时器,需要添加DSP2833x_CpuTimers.c
如果用到ADC,则需要添加DSP2833x_Adc.c
如果用到中断,需要添加DSP2833x_PieCtrl.c、 DSP2833x_PieVect.c
如果用到SCI,需要添加DSP2833x_Sci.c
其他的类推。
(6)添加库
如果程序中有三角函数或者开根号等运算,推荐只用fastPTS或IQmath库来计算,在C2000 Linker下的Flie Search Path中添加。(官网下载)
在主函数中,需要添加头文件:
#include “math.h”
#include “C28x_FPU_FastPTS.h”
具体可参考链接
在Include library flie or command file中添加
”rts2800_fpu32.lib”
在Add
"${PROJECT_ROOT}\..\DSP2833x_common\lib"
然后将最下面的Disable automatic RTS selection选中,如下图
点击Build,在Link Order中,点击Add添加库文件。
(7)其他说明
① cmd文件的选择则根据运行模式选择:
在线仿真模式: 28335_RAM_link.cmd
Flash烧写模式:F28335.cmd
② 在main.c文件中需要引用头文件
#include “DSP28x_Project.h” //包含所有的外设头文件及宏定义
(8)编译及调试
A.编译
点击 或选择Build Project,编译工程文件,编译成功后工程列表中出现Binaries(包含.out文件)和Debug文件夹。(验证程序)
B.调试
① 通断电顺序:
通电:将仿真器连接电脑,然后接通电源,最后打开仿真软件。
断电:仿真软件内部断开连接,关闭软件,断开电源,最后拔掉仿真器。
仿真器不为开发板/核心板供电
② 将仿真器连接电脑。CCS软件自身集成仿真器驱动,因此插上仿真器后会自动安装驱动。查看:右键“我的电脑”→“管理”→“设备管理器”
③ 连接电源,板上有灯亮起。连接成功后,点击.ccxml文件中的Test Connection,出现下图界面,界面中各项最后均为succeed则连接成功。
④ 点击 ,进入下图Debug界面,表示连接成功,进入调试界面
变量观察:选中该变量,然后右键“Add Watch Expression”