学习目标:
创建DSP–F28335项目
学习内容:
1、 编译环境准备 2、 创建DSP项目 3、 编译 4、 调试学习产出:
1、 技术笔记 1 篇 2、DSP程序调试方法 3、可执行程序正文
1、编译环境准备
1.1 编译环境准备
1.1 .1 安装 Code Composer Studio 9.3版本 和 ControlSuite(学习资料与示例)
CCS下载:开发环境下载https://software-dl.ti.com/ccs/esd/documents/ccs_downloads.html#code-composer-studio-version-9-downloads,下载TI软件需要注册用户。
1.1.2 controlSuite
包含了示例代码和依赖库
TI官网搜索controlSuite,登录后即可下载,安装完成后大约有2GB大小,安装路径需要预留空间。
安装参考。
2、创建DSP工程
2.1 创建的工程目录必须是没有中文,否则会报错!!!
创建工程可参考:https://blog.csdn.net/qq_39545674/article/details/79331126---- CCS6创建工程https://blog.csdn.net/qq_36697422/article/details/91517969---- CCS9创建工程F28004x系列与F2833x系列软件程序有一些变化,需要多注意些;
推荐可以参考官方例程:controlSUITE\device_support\f2833x\v142\doc\f2833x-f2823x-FRM-EX-UG.pdf
创建F28335工程有以下几步操作:
第一步:打开Code Composer Studio开发软件,点击左上角File->New->CCS Project创建项目;
第二步:设置项目名称以及项目配置,如下图,选择好后点击Finish即可完成项目创建,但是项目还编译不通过,需要设置依赖头文件和库文件以及一些配置。
连接器选择好后,点击Verify按钮,测试与开发板连接情况;也可跳过在调试前再测试连接情况。
此时,编译项目可编译通过,但是main.c中是空函数,没有任何功能实现。
第三步:设置开发需要依赖的头文件和依赖库文件,以及相应配置。
新建include和source两个文件夹,翻入依赖头文件以及实现文件;
添加头文件:controlSUITE\device_support\f2833x\v142目录下DSP2833x_common和DSP2833x_headers两个文件夹中有工程需要的库文件以及头文件、源文件。将两个文件夹中include中的.h文件放入工程中的include中;
添加源文件:
1、controlSUITE\device_support\f2833x\v142
DSP2833x_headers\source\DSP2833x_GlobalVariableDefs.c文件可以指定所有结构体的储存位置,所以只要需要使用定义好的结构体,都必须添加该c文件;
2、DSP2833x_common\source目录下的DSP2833x_SysCtrl.c文件,该文件可以初始化系统的控制选项(PLL、看门狗、预分频)。
3、DSP2833x_common\source目录下的DSP2833x_Gpio.c文件,该文件提供初始化GPIO口的函数。
4、DSP2833x_common\source目录下的DSp2833x_PieCtrl.c文件和DSP2833x_PieVect.c文件,前者初始化PIE控制器,后者初始化PIE向量表。
5、DSP2833x_common\source目录下的DSP2833x_DefaultIsr.c文件,以使用默认的中断函数。
6、DSP2833x_common\source目录下的DSP2833x_usDelay.asm文件,以提供纳秒级别的延时。
7、DSP2833x_headers\cmd目录下的DSP2833x_Headers_nonBIOS.cmd文件复制到工程路径,使用无系统的。
8、DSP2833x_common\source目录下的DSP2833x_Adc.c文件和DSP2833x_Adc_cal.asm文件。
9、添加搜索路径: 点击工程,右键Properties,配置头文件、库文件路径:
General页面配置
Build页面头文件配置
已把F2837xD_common文件夹和F2837xD_headers文件夹中的Include复制到工程目录中的include目录中;
预定义选项
设置动态库搜索路径
需要删除libc.a库,使用TI官方的 rts2800_fpu32.lib替代。
项目中,各变量的定义:
3、编译
工具栏选择编译按钮,完成编译后则可以下载到目标板子进行调试。
4、调试
一般使用CCS+仿真器时,我们把程序烧进RAM中运行,这样运行速度快,方便实际项目的开发与调试;注意此时用的是28335_RAM_lnk.cmd文件。同一个芯片类型的cmd文件是一样的。
5、Q&A
开发板连接不上参考文档,以及https://blog.csdn.net/weixin_42711299/article/details/100095458;