DSP集成开发环境CCS的使用.docx

上传人:b****8 文档编号:30036661 上传时间:2023-08-04 格式:DOCX 页数:11 大小:292.66KB
下载 相关 举报
DSP集成开发环境CCS的使用.docx_第1页
第1页 / 共11页
DSP集成开发环境CCS的使用.docx_第2页
第2页 / 共11页
DSP集成开发环境CCS的使用.docx_第3页
第3页 / 共11页
DSP集成开发环境CCS的使用.docx_第4页
第4页 / 共11页
DSP集成开发环境CCS的使用.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

DSP集成开发环境CCS的使用.docx

《DSP集成开发环境CCS的使用.docx》由会员分享,可在线阅读,更多相关《DSP集成开发环境CCS的使用.docx(11页珍藏版)》请在冰豆网上搜索。

DSP集成开发环境CCS的使用.docx

DSP集成开发环境CCS的使用

DSP实验

实验二TlDSP集成开发环境CCS的使用

昆明理工大学信息工程与自动化学院电工电子教学实验中心

主讲:

杨秋萍讲师

CCS是TI公司推出的用于开发DSP芯片的集成开发环境,它采用Windows风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发软件之一。

一、CCS的简介

CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具。

CCS有两种工作模式:

1、软件仿真器模式:

可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。

2、硬件在线编程模式:

可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。

本次实验主要采用软件仿真器模式。

二、CCS系统配置

采用标准配置文件进行系统配置的步骤:

步骤1:

启动CCS配置程序。

双击桌面上的SetupCCS快捷图标,弹出对话框。

Import巾口

LJjsJ

ToC4^f3£ur«ycs^riyittrnr■tJ-utfr»thtliltstwdtrdconEiguratiimisbelowaitdclick"^ddtozystencon£ignration"(ITe*"Fil护片捫心nfcrrswth*listofaA^tilibit

clieking^Advanced>ZbelowormanuallyconfiguringthesyEtembytxitihcthis4itl«

 

步骤2:

清除以前定义的配置

步骤3:

选择与目标系统相匹配的配置文件。

步骤4:

将所选中的配置文件加入到系统配置中

步骤5:

安装驱动程序。

点击“IntallaDeviceDriver”,弹出选择器件驱动程

序对话框

步骤6:

保存系统配置。

打开“File”菜单,单击“Save”按钮,将系统配置保存在系统寄存器中,完成CCS的系统配置。

三、CCS中常用文件名和应用界面

1、常用文件名

*cmd链接命令文件;

*obj——由源文件编译或汇编后所生成的目标文件;

*out

完成编译、汇编、链接后所形成的可执行文件,可在CCS监控下调

试和执行。

2、应用界面

四、实验举例

1.创建新工程

利用CCS创建一个新工程,然后向该工程中添加源代码文件和库文件。

1)CCS的安装目录为c:

\ti,首先在文件夹下建立一个新的文

件夹,命名为volumel。

2)将c:

\ti\tutorial\target(sim54xx或dsk5402等)\volume1文件夹中的内容拷贝到该新建的文件夹中。

3)启动CCS。

如果需要的话,对CCS进行配置,使其工作在C54xsimulator模式下。

4)从CCS的Project菜单下选择子菜单New。

将出现ProjectCreation对话框。

在对话框中“ProjectName”处输入volume1,“Location”处用浏览方式选入在第一步中所建立的文件夹volume1的位置,在“ProjectType”处选择Executable(.out)类型,在“Targe”中选择CCS所配置的目标DSP类型。

最后单击“Finish”完成。

5)通过上述步骤CodeComposerStudio就建立了一个工程文件,名为

volumel.pjt,该工程文件用于存储工程配置以及在工程中所用到的若干文件。

可在“工程项目观察窗口(Projectview)”处看到。

2.向工程中添加文件

一个工程项目包括源程序、库文件、链接命令文件和头文件等。

1)在CCS中选择菜单Project■zddFilestoProject,然后选文件volume.c,并

单击Open。

(也可在工程图标处单击鼠标右键在快捷菜单中选AddFilesto

Project,或将文件拖入工程视图窗口的文件夹中。

2)在CCS中选择菜单ProjectAddFilestoProject,并在文件类型选框中选

汇编源文件(*.a*,*.s*),然后选vectors.asm和load.asm这两个文件并单击Open。

这些文件中包含了设置复位RESET中断到程序的C入口c_int00的一些汇编指令。

(对于更加复杂的程序,可在vectors.asm文件

中定义更多的中断向量。

也可利用DSP/BIOS来自动定义所有的中断向量。

3)在CCS中选择菜单Project、一-iddFilestoProject,并在文件类型选框中选择链接命令文件(*.cmd),然后选volume.cmd并单击Open,该命令文件将汇编程序的段映射到DSP的存储空间中。

4)在CCS中选择菜单Project.-.ddFilestoProject,进入编译库文件夹

(c:

\ti\c5400\cgtools\lib),在文件类型选框中选择目标文件类型和库文件类型(*.o*,*.lib),为所配置的目标DSP选rts.lib文件并单击Open。

该库文件为目标DSP提供了运行时间(runtime)支持。

(对于一些目标DSP,运行时间库可以是一个更特殊的文件名,如rts_ext.lib。

5)在工程视图窗口,用鼠标右键单击工程文件volume.pjt并在快捷菜单中选择ScanAllDependencies这时volume.h应出现于工程视图窗口中的库

(Libraries)文件夹中。

6)单击Project左边的小加号+,将展开工程列表:

volume1.pjt,Libraries,以及Source,该列表即为工程视图。

无需手工向工程中加入inelude文件,因为CCS将会在编译过程中自动找到这些文件。

编译之后在工程视图中将出现这些inelude文件.。

如果要从工程中移出一个文件,只要在相应文件处单击鼠标右键在弹出

的快捷菜单中选Removefromproject即可。

编译时CCS在以下路径依次查找工程文件:

包含有源文件的文件夹;在compiler或assembler选项中从左到右依次列出的文件夹。

3.察看源代码

在工程视图中volume.c上双击,就可在CCS右边窗口中察看源代码。

请注意该程序中的以下部分:

在进入main函数后打印出一条消息,并进入死循环。

循环体中程序调用了datalO以及其他一些过程函数。

在过程函数中,将输入缓冲区(inputbuffer)中的每一个数值乘以增益(gain),并将结果放入输出缓冲区(outputbuffer)。

程序也将调用汇编载入例程,该例程按照传递给它的processingLoad取值来消耗指令周期。

本例中dataIO函数除了返回之外不做其他任何动作。

我们在这里不使用C代码来完成I/O,而是利用CCS中的一个探针ProbePoint来从主机的文件中读入数据并放入inp_buffer区域。

4.编译并运行程序

编译并运行程序的步骤:

1)选Project>RebuildAll或单击工具按钮二(RebuildAll)。

CCS重新编译,并链接工程中的全部文件。

编译过程信息显示在CCS下部的窗

口中。

2)在默认情况下,将当前工程目录下的debug子目录中生成.out文件。

通过CCS工具条可改变生成文件的存放位置。

3)选File>LoadProgram,并在对话框中选刚刚编译生成的文件volumel.out,单击Open打开。

(默认在目录c:

\ti\myprojects\volume1\Debug\文件夹下)这样CCS就将程序载入目标DSP,并打开一个反汇编窗口,显示出相应的反汇编指令。

CCS也将在窗口底部自动打开一个标签区域来显示程序送往stdout的输出。

4)选View—MixedSource/ASM,将同时看到c源代码和汇编结果代码。

5)在混合模式窗口中单击一条汇编伪指令本身,并按F1键,CCS将搜索该

条指令的帮助。

6)选Debug-;GoMain开始从main函数处执行程序。

程序暂停在main处,并用黄色的箭头标识。

7)选Debug>Run或单击工具按钮仝(Run)来运行程序。

8)选Debug>Halt来暂停程序执行。

9)从菜单View中选MixedSource/ASM。

将看到不带相应汇编的c代码。

从而可以方便地进行下一个任务:

修改程序选项,修正语法错误。

5.修改并运行程序

在前面的介绍中,预处理命令(井ifdefand#endif)包围的程序部分不会被执行,因为没有定义FILEIO。

在这一部分将在CCS中设置一个预处理选项。

1)选Project>BuildOptions。

2)在BuildOptions窗口的Compiler标签下,从列表栏选择Processo,在DefineSymbols域键入FILEIO,然后按Tab键。

(注:

窗口上部的编译命令中含有了选项-d。

再次编译时程序中的#ifdefFILEIO之后的语句将被包含。

根据所使用的DSP板的不同其他选项也将

发生变化。

3)单击0K保存新的选项设置。

4)选Project>RebuildAll或单击工具按钮宵(RebuildAll)。

只要改变

了工程选项,就必须重新编译所有的文件。

5)选File—;LoadProgram并选择文件volumel.out。

(也可以在编译之后自动装入,选择Option—;Customize,并单击ProgramLoadOptions标签,然后选中LoadProgramAfterBuildOption)

6)选Debug>GoMain开始从main函数处执行程序。

程序暂停在main处,并用黄色的箭头标识。

7)选Debug>Run或单击工具按钮套(Run)来运行程序。

8)选Debug>Halt来暂停程序执行。

6.使用断点以及变量观察窗口

在开发测试程序的过程中,经常需要在程序执行中察看变量的取值,将利用

断点以及变量观察窗口来达到此目的。

在达到断点后,使用单步执行命令。

1)选File>ReloadProgram。

2)在工程视图中双击文件volume.c,打开代码窗口。

将光标置于下面的语句行:

dataIO;

3)单击工具按钮1(ToggleBreakpoint)或按F9。

选择边区(编辑区左

边的灰色竖条部分)标示出断点已经设置(红色点图标)。

如果选择边区无效(用Option—Costomize》EditorProperties来设置),择行显示用粉红色高亮显示。

(用Option-;Costomize-;Color可改变颜色。

4)选View—;WatchWindow,在CCS的右下角将出现一个分离区域,程序

运行时该区域显示观察变量的取值。

默认时选中局部观察标签Watch

Locals,显示当前执行的函数中的局部变量。

5)如果程序没有停留在main处,选Debug》GoMain。

6)选Debug>Run,或按F5,或图标纠

7)选Watchl标签。

在Name栏单击并键入datalO,即键入要观察的变量名称。

8)单击watchwindow的白色区域来保存。

这时变量取值将立即显示出来。

9)单击工具按钮;】(StepOve)或按F10数次,将跳到调用dataIO()处。

10)单击只(RemoveAllBreakpoints)。

7.为文件I/O添加探针(测试点)

利用探针来从计算机中的文件读取数据,对于算法开发来说是很有用的。

针的用途:

将主机文件中的数据(如利用Matlab产生)传输到目标DSP板的缓冲区中,供相应算法使用。

将计算输出从目标板的缓冲区中取出并存放到主机的文件中,以便分析。

用来利用数据更新某窗口,如图形显示窗口。

本部分利用探针将主机文件数据传送到目标板作为测试数据,另外,当到达

探针位置时,利用断点来更新所有打开的窗口。

1)File—LoadProgram,选择volume1.out,并单击Open。

2)双击工程视图文件volume.c。

3)将光标置于main函数中的语句处:

dataIO();

此处dataIO()函数作为一个占位符(无任何功能的函数)。

现在该函

数是一个方便的位置来设置探针,以便从主机传入数据

 

点,标示探针已经设置。

若选择边区无效,可以使用

Option—Customize》EditorProperties来设置,在该行用蓝色高亮来显示,用Option>Customize>Color来改变颜色。

5)从File菜单选择FileI/O。

FileI/O对话框出现以便选择输入、输出文件。

6)在FileInput标签下,单击AddFile。

7)浏览到建立的volume1工程文件夹并选择sine.dat单击Open。

(可在文件类型项目下选择数据文件格式。

sine.dat文件包含了一个正弦波形的

16进制数值)

接着出现了sine.dat的控制窗口。

当执行程序时,可利用该控制窗口来在数据文件中作开始、停止、回卷、快进操作。

8)在File/IO对话框中,改变Address为inp_buffer,修改Length为100,并选中WrapAround框。

Address域定义了来自文件的数据应放到哪里。

inp_buffer是在

volume.c中声明的大小为BUFSIZE的一个整型数组(BUFSIZE是

定义于volume.h的一个常量。

Length域定义了每次探针点能从数据文件中读取多少样本。

由于在

volume.h中定义了常量BUFSIZE为(0x64),所以这里设置Length域为100。

WrapAround选项使得当CCS读取数据到文件末尾时能够再次从文件头开始读取。

这就允许数据文件可以被视为一个连续数据流,尽管该文件中只包含1000各数据,而探针每次读取100个数据值。

9)单击AddProbePoint,使得Break/ProbePoints对话框中的ProbePoints标签出现。

10)在ProbePoint列表中,单击VOLUME.Cline61>NoConnection行使之咼亮。

11)在ConnectTo域,单击下拉箭头并从列表中文件选择sine.dat。

12)单击Replace这样ProbePoint列表将显示为探针与文件sine.dat已经连

接。

单击OK,那么现在FileI/O对话框就将显示文件与探针相连。

单击

OK关闭FileI/O对话框

8.显示图形

如果现在运行程序,那么程序的运行结果将无法显示出来。

通过设置观察变量来观察与inp_buffer和out_buffer数组相关联的地址中的数据。

但是需要观察

许多数据,并且显示的只是数据,而不是数据相应的曲线图(波形图)。

CCS提供了多种方式来将程序处理的数据可视化。

1)选菜单View》Graph》Time/Frequency。

2)在GraphProperty对话框中,修改GraphTitle为Input,StartAddress为inp_buffer,AcquisitionBufferSize为100,DisplayDataSize为100,DSPDataType为16-bitsignedinteger,Autoscale为Off,MaximumY-value为1000。

3)单击OK,显示InputBuffer的一个Input图形窗口就出现了。

4)在Inputgraph窗口单击鼠标右键并在弹出菜单中选择ClearDisplay。

5)再次选菜单View>Graph》Time/Frequency。

将GraphTitle修改为Output,并将StartAddress修改为out_buffer,其余值默认。

6)单击OK,显示Output图形窗口。

在该窗口中单击鼠标右键,从弹出菜

单中选择ClearDisplay。

五、实验操作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1