1、第5章 DSP集成开发环境(CCS)了解了解CCS开发环境具有的功能,能够操作开发环境具有的功能,能够操作CCS的窗口、菜单和工具条。掌握的窗口、菜单和工具条。掌握CCS工程管理的概念,工程管理的概念,能够完成简单程序的编辑、汇编、连接和调试,并能够完成简单程序的编辑、汇编、连接和调试,并掌握探针和显示图形的使用。掌握探针和显示图形的使用。CCS是是TI公司公司DSP软件的集成开发环境软件的集成开发环境(IDE),本章以),本章以CCS2.0为参照讲述。为参照讲述。第5章 DSP集成开发环境(CCS)5.1 CCS集成开发环境简介集成开发环境简介 Windows下工作,类似于下工作,类似于VC
2、+的的;采用图形接口界面,有采用图形接口界面,有和和;它将汇编器、链接器、它将汇编器、链接器、C/C+编译器、建库工具等集成编译器、建库工具等集成在一个在一个中;中;CCS所集成的代码调试工具具有各种所集成的代码调试工具具有各种,能对,能对TMS320系列系列DSP进行进行和和。丰富的输入丰富的输入/出库函数和信号处理出库函数和信号处理。是专门为开发是专门为开发C5000系列系列DSP系统(系统(C54x和和C55x)。)。5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介第5章 DSP集成开发环境(CCS)5.1.1.CCS安装及设置安装及设置 1.CCS 2.0系统的安装系统的安
3、装 5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介CCS快捷图标快捷图标 第5章 DSP集成开发环境(CCS)2.系统配置系统配置:为使:为使CCS IDECCS IDE能工作在不同的硬件或仿真目标上能工作在不同的硬件或仿真目标上:双击桌面上的双击桌面上的CCS 2CCS 2(C 5000)C 5000)图标,启动图标,启动CCSCCS设置。设置。在弹出对话框中单击在弹出对话框中单击“”按钮,清除以前定按钮,清除以前定义的配置。义的配置。从列出的可供选择的从列出的可供选择的中,选择能与使用中,选择能与使用的目标系统相匹配的配置文件。的目标系统相匹配的配置文件。单击单击配置按钮,将
4、所选中的配置文件输配置按钮,将所选中的配置文件输入到入到CCSCCS设置窗口当前正在创建的系统配置中。设置窗口当前正在创建的系统配置中。单击单击“(保存保存)”按钮,将配置保存在系统按钮,将配置保存在系统寄存器中。寄存器中。当完成当完成CCS配置后,单击配置后,单击“”按钮,退出按钮,退出CCS Setup。5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介第5章 DSP集成开发环境(CCS)3.系统启动系统启动 双击桌面上双击桌面上CCS 2(C 5000)图标,启动图标,启动CCS IDE显示显示CCS主界面。主界面。5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介第
5、5章 DSP集成开发环境(CCS)5.1.2.CCS的窗口、菜单和工具条的窗口、菜单和工具条 1.CCS的窗口的窗口 :用来组织用户的若干程序并由此构成一个项:用来组织用户的若干程序并由此构成一个项目,用户可以从工程列表中选中需要编辑和调试的特定程序。目,用户可以从工程列表中选中需要编辑和调试的特定程序。:用户既可以编辑程序,又可以设置断:用户既可以编辑程序,又可以设置断点和探针,并调试程序。点和探针,并调试程序。:帮助用户查看机器指令,查找错误。:帮助用户查看机器指令,查找错误。:查看、编辑内存和寄存器。:查看、编辑内存和寄存器。:可以根据用户需要显示数据。:可以根据用户需要显示数据。:用户
6、可以通过条目来管理各窗口。:用户可以通过条目来管理各窗口。5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 寄存器显示窗口 工程窗口 原程序编辑窗口 反汇编窗口 图形显示窗口 内存单元显示窗口 第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介2.CCS的菜单的菜单 菜单:提供了与文件相关的命令,菜单:提供了与文件相关的命令,New,Load 等等 菜单:提供了与编辑有关的命令,菜单:提供了与编辑有关的命令,Register等等 菜单:是否显
7、示工具栏、窗口和各种对话框等菜单:是否显示工具栏、窗口和各种对话框等Memory 菜单:使用工程管理设计文档,菜单:使用工程管理设计文档,Compile,Biuld 菜单:提供常用调试命令,菜单:提供常用调试命令,Breakpoints Probe Points 菜单:剖切点是菜单:剖切点是CCS在调试程序时,统计某一块程在调试程序时,统计某一块程序执行所需要的序执行所需要的CPU时钟周期数、子程序被调用数和中断发生时钟周期数、子程序被调用数和中断发生次数等统计信息次数等统计信息 菜单:提供菜单:提供CCS的一些设置选项的一些设置选项,Font 第5章 DSP集成开发环境(CCS)5.1 CC
8、S集成开发环境简介 Project菜单菜单(工程文件被存盘为工程文件被存盘为*.pjt文件文件)(1)Add Files to Project 工程中支持工程中支持C源文件源文件(*.c*)、汇编源文件、汇编源文件(*.a*、*.s*)、库文件库文件(*.o*、*.lib)、头文件、头文件(*.h)和链接命令文件和链接命令文件(*.cmd)(2)Compile 对对C或汇编源文件进行编译。或汇编源文件进行编译。(3)Biuld 重新编译和链接。重新编译和链接。(4)Rebuiled All 对工程中所有文件重新编译并链接生成输对工程中所有文件重新编译并链接生成输出文件。出文件。(5)Stop
9、Build 停止正在停止正在Build的进程。的进程。(6)Biuld Options 用来设定编译器、汇编器和链接器的参用来设定编译器、汇编器和链接器的参数。数。第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 3.CCS的工具栏的工具栏 Standard ToolbarStandard Toolbar:包括新建、打开、保存、剪切、复:包括新建、打开、保存、剪切、复制、粘贴、取消、恢复、查找、打印和帮助等制、粘贴、取消、恢复、查找、打印和帮助等 Project ToolbarProject Toolbar:包括选择当前工程、编译文件、设置:包括
10、选择当前工程、编译文件、设置和移去断点和移去断点/Probe Point/Probe Point等功能。等功能。Edit ToolbarEdit Toolbar:提供一些常用的查找和设置标签命令。:提供一些常用的查找和设置标签命令。GEL ToolbarGEL Toolbar:提供了执行:提供了执行GELGEL函数的一种快捷方法。函数的一种快捷方法。ASM/Source Stepping ToolbarASM/Source Stepping Toolbar:提供了单步调试:提供了单步调试C C或汇或汇编源程序的方法编源程序的方法 Target Control ToolbarTarget Con
11、trol Toolbar:提供了目标程序控制的一些:提供了目标程序控制的一些工具工具 Debug Window ToolbarDebug Window Toolbar:提供了调试窗口工具:提供了调试窗口工具 第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介5.1.3.CCS的的工程管理工程管理 CCSCCS对程序采用工程对程序采用工程(Project)(Project)的集成管理方法。工程保持的集成管理方法。工程保持并跟踪在生成目标程序或库过程中的所有信息。并跟踪在生成目标程序或库过程中的所有信息。1.1.典型工程文件记录的信息典型工程文件记录的
12、信息 源程序文件名和目标库;源程序文件名和目标库;编译器、汇编器和链接器选项;编译器、汇编器和链接器选项;头文件;头文件;2.2.创建和管理工程创建和管理工程 工程的创建、打开和关闭(工程的创建、打开和关闭(ProjectNewProjectNew/Open/Close/Open/Close)使用工程观察窗口(单击工程文件夹、工程名使用工程观察窗口(单击工程文件夹、工程名(*.pjt.pjt)和和各个文件夹上的各个文件夹上的“+/+/”号即可号即可 )添加添加文件到工程文件到工程(ProjectAdd Files to Project)从从工程中工程中删除文件(删除文件(Remove from
13、 Project)第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介5.1.4.调试调试 (1 1)装载可执行程序)装载可执行程序 FileFileLoad ProgramLoad Program (2 2)复位()复位(CCSCCS提供提供4 4种方法)种方法)Reset DSPReset DSP:DebugReset DSP:DebugReset DSP命令初始化所有命令初始化所有R R并停并停止运行程序。止运行程序。Load KernelLoad Kernel:Lode Kernel :Lode Kernel 命令重新装入命令重新装入DSPD
14、SP核核 Why?若用户使用一基于核的调试器(不是JTAG),则DSP核应负责主机的通信。如果DSP核被破坏,则设备驱动程序将无法与目标板通信。RestartRestart:Debug Restart:Debug Restart 命令将命令将PCPC恢复到当前载入恢复到当前载入程序的入口地址,但不执行当前程序。程序的入口地址,但不执行当前程序。Go mainGo main:Debug Go main:Debug Go main命令提供了一种快速运行命令提供了一种快速运行用户应用程序的方法。用户应用程序的方法。(在主程序入口处设置临时断点,然后开始执行。当程序被暂停或遇到一个断点时,临时断点被删
15、除。)第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介5.1.4.调试(续)调试(续)(3 3)程序执行方式)程序执行方式 单步执行操作单步执行操作 :DebugStep Into:DebugStep Into:每操作一次,执行一条每操作一次,执行一条指令;指令;:DebugStep Over:DebugStep Over:每操作一次,执行一条每操作一次,执行一条指令(函数,子程序看作一条);指令(函数,子程序看作一条);:DebugStep Out:DebugStep Out:从子程序跳出;从子程序跳出;:Debug Run to Cursor
16、:Debug Run to Cursor:程序运行到光程序运行到光标所在语句。标所在语句。连续运行操作(实时运行)连续运行操作(实时运行):DebugRunDebugRun:从当前:从当前PCPC所指位置开始执行到所指位置开始执行到结束或断点;结束或断点;:Debug Halt:Debug Halt:暂停程序的执行;暂停程序的执行;:Debug Run free:Debug Run free:全速执行用户程序,忽全速执行用户程序,忽略所有断点。略所有断点。第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 5.1.4.调试(续)调试(续)(3 3)
17、程序执行方式)程序执行方式(续)(续)断点运行程序(动画)断点运行程序(动画)在执行各个命令前应当预先设置好程序断点,每按一次在执行各个命令前应当预先设置好程序断点,每按一次按钮,从当前程序位置执行到所有遇到的第一个断点,按钮,从当前程序位置执行到所有遇到的第一个断点,。命令:命令:Debug animate;Debug animate;断点设置:断点设置:探针(探针(probeprobe)断点)断点:CCSCCS在源程序某条语句上设置的一在源程序某条语句上设置的一种断点。每个探针断点都有相应的属性(用户设置)用来与种断点。每个探针断点都有相应的属性(用户设置)用来与一个文件的读一个文件的读/
18、写相关联。用户程序运行到探针断点所在语句写相关联。用户程序运行到探针断点所在语句时,自动读入数据或将计算结果输出到某个文件中时,自动读入数据或将计算结果输出到某个文件中。置断点”按钮采用工程工具条:“设使用对话框;第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 5.1.4.调试(续)调试(续)(4)存储器、寄存器、变量的操作)存储器、寄存器、变量的操作 :拷贝数据块:拷贝数据块/填充数据块填充数据块/察看察看/编辑内存编辑内存 :显示寄存器:显示寄存器/编辑寄存器编辑寄存器 :用观察窗口查看变量:用观察窗口查看变量/编辑变量编辑变量(5)数据输
19、入)数据输入/输出输出 :FileData(Lode/Save)用途:偶尔的手工读入用途:偶尔的手工读入/写出场合写出场合 :适用于自动调入和输出数据场合。:适用于自动调入和输出数据场合。第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 5.1.4.调试(续)调试(续)(6 6)图形窗口分析数据)图形窗口分析数据 提供了四类提供了四类9 9种显示功能:每种显示所需的设置参数各不相同。种显示功能:每种显示所需的设置参数各不相同。时频图时频图 星座图星座图:信号的相位分布;:信号的相位分布;眼图眼图:信号码间干扰情况;:信号码间干扰情况;图像显示图像
20、显示:YUV或或RGB;成多帧)成一帧,按时间顺序构多帧显示(幅频曲线构频率曲线)相位频率幅度和相位(幅度频率曲线)(幅度复数时间曲线)双曲线图(幅度单FFTFFTFFT -/-FFT/-/第5章 DSP集成开发环境(CCS)5.1 CCS5.1 CCS集成开发环境简介集成开发环境简介 5.1.5.通用扩展语言通用扩展语言GEL GEL(General Extension Language)GEL(General Extension Language)是一种是一种与与C C类似的解释性语言。类似的解释性语言。:利用利用GELGEL语言,用户可以访问实际语言,用户可以访问实际/仿真目标板,仿真目
21、标板,设置设置GELGEL菜单选项,特别适合用于自动测试和自定义工作空间菜单选项,特别适合用于自动测试和自定义工作空间。参见参见TITI公司的公司的TMS320C54x Code Composer TMS320C54x Code Composer Studio Users GuideStudio Users Guide手册。手册。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 5.2 CCS 应用举例应用举例通过本例要介绍的主要内容:通过本例要介绍的主要内容:创建一个工程文件创建一个工程文件 向工程中添加源文件向工程中添加源文件 浏览代码、编译和运行程序浏
22、览代码、编译和运行程序 修改修改Build选项并更正语法错误选项并更正语法错误 使用断点和使用断点和Watch 窗口窗口 使用探针的方法使用探针的方法 图形显示的方法。图形显示的方法。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 1.创建一个工程创建一个工程 通过通过“ProjectNew”,在工程窗口的,在工程窗口的Project下面创建一个下面创建一个Volume工程。工程。2.向工程中添加源文件向工程中添加源文件(1)通过)通过“ProjectAdd Files to Project”,将,将Volume.c添加到添加到工程中。工程中。(2)用同样
23、方法将用同样方法将Vector.asm添加到工程中。添加到工程中。(Vector.asm中包含的是将RESET中断指向C程序入口c_int00的汇编指令和其他中断的入口指令。如果调试的程序较为复杂,则可在Vector.asm中定义更多的中断矢量)(3)将将Volume.cmd添加到工程文件中。添加到工程文件中。(该文件的作用是将段(Sections)分配到存储器中)(4)将将load.asm添加到工程文件中。添加到工程文件中。(该文件包含一个简单的汇编循环程序,被C程序调用。调用时带有一个参数(argument),执行此程序共需约1000argument个指令周期)(5)将将“C:tic540
24、0cgtoolslib”下的下的rts.lib加入到工程文件中。加入到工程文件中。(该文件是采用C语言开发DSP应用程序的运行支持库函数)第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 3.浏览代码浏览代码#include#include“volume.h”/*Global declarations*/int inp_bufferBUFSIZE;/*processing data buffers*/int out_bufferBUFSIZE;int gain=MINGAIN;/*volume control variable*/unsigned int p
25、rocessingLoad=BASELOAD;/*processing routine load struct PARMS str=value*/2934,9432,213,9432,&str ;第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 3.浏览代码(续)浏览代码(续)/*Functions*/extern void load(unsigned int loadValue);static int processing(int*input,int*output);说明:说明:processing函数将输入函数将输入buffer中的数与增益相乘,并将结果
26、中的数与增益相乘,并将结果输出给输出给buffer,它调用汇编,它调用汇编load例程的参数例程的参数processingLoad的值的值计算指令周期的时间。计算指令周期的时间。static void dataIO(void);说明:说明:dataIO函数不执行任何实质操作。它没有使用函数不执行任何实质操作。它没有使用C代码执行代码执行I/O操作,而是通过操作,而是通过CCS中的中的Probe Point工具,从工具,从PC文件中读取数文件中读取数据到据到inp_buffer中,作为中,作为processing函数的输入参数。函数的输入参数。第5章 DSP集成开发环境(CCS)5.2 CCS
27、5.2 CCS 应用举例应用举例 3.浏览代码(续)浏览代码(续)/*=main=*/void main()int*input=&inp_buffer0;int*output=&out_buffer0;puts(volume example startedn);/*loop forever*/while(TRUE)/*Read input data using a probe-point connected to a host file.Write output data to a graph connected through a probe-point.*/dataIO();#ifdef
28、FILEIO puts(begin processing)/*deliberate syntax error*/#endif /*apply gain*/processing(input,output);第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 3.浏览代码(续)浏览代码(续)/*=processing=*FUNCTION:apply signal processing transform to input signal.*PARAMETERS:address of input and output buffers.*RETURN VALUE:TRU
29、E.*/static int processing(int*input,int*output)int size=BUFSIZE;while(size-);/*additional processing load*/return(TRUE);第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 3.浏览代码(续)浏览代码(续)/*=dataIO=*FUNCTION:read input signal and write processed output signal.*PARAMETERS:none.*RETURN VALUE:none.*/static void
30、 dataIO()/*do data I/O*/return;第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 4.编译和运行程序编译和运行程序 “ProjectRebuild All”,对工程进行重新编译。,对工程进行重新编译。“FileLoad Program”,选,选volume.out并打开,将并打开,将Build生成生成的程序加载到的程序加载到DSP。“ViewMixed Source/ASM”。该设置使得。该设置使得C程序与其汇编程序与其汇编结果同时显示。结果同时显示。“DebugGo Main”。使得程序从主程序开始执行。使得程序从主程序开始执
31、行。“DebugRun”,可以在,可以在Output窗口看到窗口看到“begin processing”信息。信息。“Debug Halt,中止正在执行的程序。,中止正在执行的程序。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 5.使用断点和使用断点和Watch 窗口窗口(1)将光标放在将光标放在“dataIO();”行。行。(2)单击鼠标右键,在弹出菜单上选单击鼠标右键,在弹出菜单上选Toggle breakpoint,设置断点。,设置断点。(3)选择选择“ViewWatch Window”,将出现,将出现Watch窗口。程序运行窗口。程序运行时时Wa
32、tch Window窗口将显示要查看的变量值。窗口将显示要查看的变量值。(4)选择选择Watch1栏。栏。(5)在在Watch1窗口单击图标,在窗口单击图标,在name栏输入栏输入dataIO。(6)选择选择“DebugGo Main”。(7)选择选择“DebugRun”,运行程序,显示出,运行程序,显示出dataIO是一个函数,是一个函数,该函数存放的首地址是该函数存放的首地址是0 x00001457。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 6.使用探针使用探针(Probe Point Probe Point)的方法)的方法 :有用工具,可从有用
33、工具,可从PCPC文件中存取数据。即文件中存取数据。即 将将PCPC文件中数据传送到目标板上的文件中数据传送到目标板上的bufferbuffer,供算法使用。,供算法使用。将目标板上将目标板上bufferbuffer中的输出数据传送到中的输出数据传送到PCPC文件中以供分析。文件中以供分析。更新一个窗口,如由数据绘出的更新一个窗口,如由数据绘出的GraphGraph窗口。窗口。:都能中断程序的运行都能中断程序的运行 :Probe Point只是暂时中断程序运行,当程序运行到只是暂时中断程序运行,当程序运行到Probe Point时会更新与之相连的窗口,然后自动继续运行程序时会更新与之相连的窗口
34、,然后自动继续运行程序 Breakpoints中断程序运行后,将更新所有打开的窗口,且只中断程序运行后,将更新所有打开的窗口,且只能用人工的方法恢复程序运行;能用人工的方法恢复程序运行;Probe Point可与可与FILEIO配合,在目标板与配合,在目标板与PC文件之间传送文件之间传送数据,数据,Breakpoints则无此功能。则无此功能。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 Probe Point应用举例应用举例:将将PC上文件中的内容作为测试数据传送到目标板。同时使用上文件中的内容作为测试数据传送到目标板。同时使用一个断点以便在到达一个断
35、点以便在到达Probe Point时自动更新所有打开的窗口。时自动更新所有打开的窗口。(1)(1)将光标放在主函数的将光标放在主函数的dataIOdataIO()()行上。行上。(2)(2)单击鼠标右键,在弹出菜单中选择单击鼠标右键,在弹出菜单中选择“Toggle Probe PointToggle Probe Point”,添加添加Probe PointProbe Point。(3)(3)在在FileFile菜单选择菜单选择“File I/O”File I/O”,出现,出现File I/OFile I/O对话框,在对话框,在对话框中选择输入对话框中选择输入/输出文件。输出文件。(4)(4)在
36、在“File InputFile Input”栏中,单击栏中,单击Add FileAdd File按钮。按钮。(5)(5)在在volume.cvolume.c文件所在目录选择文件所在目录选择sina.datsina.dat,并单击打开按钮。,并单击打开按钮。此时将出现一个控制窗口,可以在运行程序时使用这个窗口来此时将出现一个控制窗口,可以在运行程序时使用这个窗口来控制数据文件的开始、停止、前进、后退等操作。控制数据文件的开始、停止、前进、后退等操作。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 Probe Point应用举例(续)应用举例(续):(6)(
37、6)在在File I/OFile I/O对话框中,在对话框中,在AddressAddress域填入域填入inp_bufferinp_buffer,在,在lengthlength域填入域填入100100,选中,选中Wrap AroundWrap Around复选框复选框(读取数据的循环特性)(读取数据的循环特性)(7)(7)单击单击“Add Probe PointAdd Probe Point”按钮,将出现按钮,将出现Break/Probe Break/Probe PointsPoints对话框,选中对话框,选中“Probe PointsProbe Points”栏。栏。(8)(8)在在Prob
38、e PointProbe Point列表中显示列表中显示“VOLUME.C line VOLUME.C line 6161-No -No ConnectionConnection”。表明该第。表明该第6161行已经设置行已经设置Probe PointProbe Point,但还没有,但还没有和和PCPC文件关联。文件关联。(9)(9)在在ConnectConnect域,单击向下箭头并从列表中选域,单击向下箭头并从列表中选sine.datsine.dat。(10)(10)单击单击ReplaceReplace按钮,按钮,Probe PointProbe Point列表框表示列表框表示Probe P
39、ointProbe Point已与已与sine.datsine.dat文件相关联。文件相关联。(11)(11)单击单击“确定确定”按钮,按钮,File I/OFile I/O对话框指示文件连至一个对话框指示文件连至一个Probe PointProbe Point。(12)(12)单击单击“确定确定”按钮,关闭按钮,关闭File I/OFile I/O对话框。对话框。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 7.使用图形显示的方法使用图形显示的方法 CCS提供很多方法将程序提供很多方法将程序产生的数据图形显示,包括产生的数据图形显示,包括时域时域/频域
40、波形显示,星座图、频域波形显示,星座图、眼图等。眼图等。下面使用时域下面使用时域/频域波形显频域波形显示功能观察上例时域波形。示功能观察上例时域波形。(1)(1)选择选择“ViewGraphTime/FrequViewGraphTime/Frequency(ency(显示显示图形图形时域时域/频频域域)”)”。弹出。弹出Graph PropertyGraph Property对话框,如右图所示。对话框,如右图所示。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 7.使用图形显示的方法(续)使用图形显示的方法(续)(2)(2)在在Graph Property
41、Graph Property对话框中,更改对话框中,更改Graph Title(Graph Title(图形标题图形标题)、Start Address(Start Address(起始地址起始地址)、Acquisition BufferSizeAcquisition BufferSize(采集缓采集缓冲区大小冲区大小)、DSP Data Type(DSPDSP Data Type(DSP数据类型数据类型)、AutoscaleAutoscale(自动伸自动伸缩属性缩属性)及及Maximum Y-value(Maximum Y-value(最大最大Y Y值值)。(3)(3)单击单击OKOK按钮,出
42、现一个显示按钮,出现一个显示inp_bufferinp_buffer波形的图形窗口。波形的图形窗口。(4)(4)在图形窗口中右击,从弹出菜单中选择在图形窗口中右击,从弹出菜单中选择Clear DisplayClear Display,清,清除已显示波形。除已显示波形。(5)(5)再次执行再次执行“ViewViewGraphGraphTime/FrequencyTime/Frequency”。(6)(6)将将Graph TitleGraph Title修改为修改为output bufferoutput buffer,Start AddressStart Address修改修改为为out_buff
43、erout_buffer,其他设置不变。,其他设置不变。(7)(7)单击单击OKOK按钮,出现一个显示按钮,出现一个显示out_bufferout_buffer波形的图形窗口,波形的图形窗口,右击从菜单中选择右击从菜单中选择Clear DisplayClear Display命令,清除已有显示波形。命令,清除已有显示波形。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 动态显示图形举例动态显示图形举例:由于由于Probe PointProbe Point不会更新图形显示内容。本例将设置一个断不会更新图形显示内容。本例将设置一个断点,使图形窗口自动更新。使用
44、点,使图形窗口自动更新。使用AnimateAnimate命令,使程序到达断点命令,使程序到达断点时更新窗口后自动继续运行。时更新窗口后自动继续运行。(1)(1)在在volume.cvolume.c窗口,将光标放在窗口,将光标放在dataIOdataIO行上。行上。(2)(2)在该行同时设置一个断点和一个在该行同时设置一个断点和一个Probe PointProbe Point,使程序中,使程序中断时执行两个操作:传送数据和更新图形显示。断时执行两个操作:传送数据和更新图形显示。(3)(3)在在DebugDebug菜单单击菜单单击AnimateAnimate。此命令将运行程序,碰到断点。此命令将运
45、行程序,碰到断点后临时中断程序运行,更新窗口显示,然后继续执行程序后临时中断程序运行,更新窗口显示,然后继续执行程序(与Run不同的是,Animate会继续执行程序直到碰到下一个断点。只有人为干预时,程序才会真正中止运行。可以将Animate命令理解为一个“运行中断继续”的操作)。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 动态显示图形举例(续)动态显示图形举例(续):(5)(5)每次碰到每次碰到Probe PointProbe Point时,时,CCSCCS将从将从sine.datsine.dat文件读取文件读取100100个样值,并将其写至输入缓冲
46、个样值,并将其写至输入缓冲inp_bufferinp_buffer。由于。由于sine.datsine.dat文件文件保存的是保存的是4040个采样值的正弦波形数据,因此每个波形包括个采样值的正弦波形数据,因此每个波形包括2.52.5个个sinsin周期波形,如下图所示。周期波形,如下图所示。(6)(6)选择选择“DebugHalt(DebugHalt(调试调试停止停止)”)”,停止程序运行。,停止程序运行。第5章 DSP集成开发环境(CCS)5.2 CCS 5.2 CCS 应用举例应用举例 动态显示图形举例(续)动态显示图形举例(续):(7)调节增益(使用调节增益(使用Watch功能改变输出
47、增益)功能改变输出增益)output+=input+*gain 在在Watch窗口右击,选择窗口右击,选择“Insert New Expression”。输入输入Gain作为要观察的表达式,单击作为要观察的表达式,单击OK按钮。按钮。在在Watch窗口双击窗口双击Gain。在变量编辑窗口将在变量编辑窗口将Gain值由值由1改为改为10,单击,单击OK按钮。按钮。第5章 DSP集成开发环境(CCS)5.3 CCS仿真 5.3 CCS仿真仿真 TMS320软件仿真器是一个软件仿真器是一个软件程序软件程序,使用主机的处理器和,使用主机的处理器和存储器来仿真存储器来仿真TMS320 DSP的微处理器和
48、微计算机模式,从的微处理器和微计算机模式,从而进行软件开发和非实时的程序验证。而进行软件开发和非实时的程序验证。在在PC机上,典型的仿真速度为机上,典型的仿真速度为每秒几百条指令每秒几百条指令第5章 DSP集成开发环境(CCS)5.3 CCS仿真 软仿真器的性能软仿真器的性能 在主机上执行用户的在主机上执行用户的DSPDSP程序程序 修改和检查寄存器修改和检查寄存器/显示和修改数据及程序存储器显示和修改数据及程序存储器 外设、外设、CACHECACHE、PIPELINE(PIPELINE(流水线流水线)的时序仿真的时序仿真 设置断点设置断点/单步执行单步执行/产生中断产生中断 跟踪跟踪ACCA
49、CC、PCPC、ARAR、表达式的值等、表达式的值等 对非法操作码和无效数据输入等提供出错信息对非法操作码和无效数据输入等提供出错信息 执行批处理文件中的命令执行批处理文件中的命令 文件方式快速存储和调用仿真参数文件方式快速存储和调用仿真参数 反汇编反汇编 周期计数并显示周期计数并显示第5章 DSP集成开发环境(CCS)5.3 CCS仿真 1.用用Simulator仿真中断仿真中断 C54x允许用户仿真外部中断信号允许用户仿真外部中断信号INT0INT3,并选择中断,并选择中断发生的时钟周期。发生的时钟周期。方法:建立一个数据文件,并将其连接到方法:建立一个数据文件,并将其连接到4个中断引脚中
50、的一个中断引脚中的一个即个即INT0INT3,或,或BIO引脚。引脚。(注意:时间间隔用CPU时钟周期函数来表示,仿真从一个时钟周期开始)(1)设置输入文件设置输入文件 用文本编辑器编辑一个输入文件,列出中断间隔。格式:用文本编辑器编辑一个输入文件,列出中断间隔。格式:clock clock,logic valuerpt n|EOS 其中:其中:clock(时钟周期时钟周期)是指希望中断发生时的是指希望中断发生时的CPU时钟周期时钟周期 logic value(逻辑值逻辑值)只使用于只使用于BIO引脚。必须使用一个值去迫引脚。必须使用一个值去迫使信号在相应的时钟周期处置高位和置低位。使信号在相