CCS6-28335新建工程
CCS6新建工程(28335)
最近几天,研究了一下如何在CCS6里面新建工程文件,在这里总结一下,以备不时之需。
一、需要准备的东西
1、 软件CCS6
2、 Ti的controlSUITE软件,这个软件比较大(压缩包就有2G),它里面有我们需要的库文件。
3、 一块开发板,我用的是28335。
二、建立工程的步骤
2.1 新建空的工程
1、点击File》new》CCS Project
图1 点击新建工程
2、如图2配置
图2 配置
然后点击Finish。这是我的工程文件是这样的(图3):
图3
4、 新建两个文件夹:source文件夹和include文件夹。这个是写代码的一种比较好
习惯,我们把头文件(.h文件)放在include文件夹里面,把c文件(.c文件)放
在source文件夹里面,便于管理。文件夹建好后如图4:(我把main函数也
放进source文件夹了)
图4
5、 点击“build”图标(一只锤子),编译一下。我的这里显示编译成功,但是会有三个建议信息,提示你一些参数应该怎么配置,这里可以不用去管。
图5 编译成功
图6 三个建议信息
但是现在的工程还没有任何功能,我们需要为它添加一些文件。
6、 为工程添加文件
6.1、添加头文件
在controlSUITE\device_support\f2833x\v142中有DSP2833x_common和DSP2833x_headers两个文件夹,这两个文件夹里面有我们需要的库函数以及相应的头文件,将这两个文件夹中的子文件夹“include”文件夹中的所有h文件拷贝到我们刚刚建立的include文件夹中。添加完后的工程界面如图7:
图7
6.2、添加源文件
在每一个工程中,有一些源文件(c文件,asm文件,cmd文件)是必须添加的:
1、 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_headers\cmd目录下的DSP2833x_Headers_nonBIOS.cmd文件,我用的是无系统的。
7、 DSP2833x_common\source目录下的DSP2833x_usDelay.asm文件,以提供纳秒级别的延时。
8、 DSP2833x_common\source目录下的DSP2833x_Adc.c文件和DSP2833x_Adc_cal.asm文件,这两个按理来说是用来配置ADC的,而我的程序并没有用到ADC,按理来说不用加这两个文件,但是我在调试过程中,不加会报错,水平有限,暂时妥协着加上去。
添加完毕的工程界面如图8:
图8
9、 添加搜索路径
添加完文件之后,还需要为工程指明我们的头文件在哪里。
右击工程标题,在弹出的对话框选“Properties”,进入工程配置对话框,如图9:
图9
选中左侧的includeOptions选项卡,在右侧的“Add air to #include path”中点击该框右上侧的“+”,选择“Workspace”,在我们新建的工程的目录下选择“include”文件夹,点击“Ok”,完成后的图如下:
图10
10、 build
点击build,没问题。
11、 写一个小程序试试
#include"DSP28x_Project.h"
void main(void)
{
inti=0;
intj=0;
intk=0;
InitSysCtrl();
EALLOW;
GpioCtrlRegs.GPBMUX2.bit.GPIO53 = 0;
GpioCtrlRegs.GPBDIR.bit.GPIO53 = 1;
GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO0 = 1;
EDIS;
for(;;)
{
for(i=0;i<k;i++)
{
for(j=0;j<k;j++)
;
}
k++;
GpioDataRegs.GPBTOGGLE.bit.GPIO53=(k)%2;
GpioDataRegs.GPATOGGLE.bit.GPIO0 =(k)%2;
if(k>800)
k=0;
}
}
注意,由于我只是导入了几个c文件,所以定时器之类的其他外设并不能用,如果需要,则需要将相应的c文件拷贝到source文件夹。
12、查看实验现象
将板子正确连接,点击debug,点击绿色的右三角开始运行程序,程序运行成功,灯开始闪烁,蜂鸣器开始叫,如图:
图11
三、参考文献
https://www.cnblogs.com/dongfengweixiao/p/5904067.html
四、不足之处
不知道为什么要添加ADC文件,这里的程序只是在RAM中在线运行,程序没有烧录到DSP中,如果想烧录进去,请百度解决。
如果发现文中有出错的地方,望不吝啬指教,qq:1826249828