TMS320F2812应用程序开发过程

上传人:小** 文档编号:146719415 上传时间:2022-08-31 格式:DOC 页数:28 大小:2.40MB
收藏 版权申诉 举报 下载
TMS320F2812应用程序开发过程_第1页
第1页 / 共28页
TMS320F2812应用程序开发过程_第2页
第2页 / 共28页
TMS320F2812应用程序开发过程_第3页
第3页 / 共28页
资源描述:

《TMS320F2812应用程序开发过程》由会员分享,可在线阅读,更多相关《TMS320F2812应用程序开发过程(28页珍藏版)》请在装配图网上搜索。

1、CCS集成开发环境的应用3.3.1CCS(CodeComposerStudio)集成开发环境简介公司为推广其芯片而开发了调试和软件工具:()集成开发环境。它提供了环境配置、源文件编辑、程序调试、跟踪与分析等工具,帮助用户在软件环境下完成编辑、编译、链接、调试和数据分析等工作。与公司早期提供的开发工具相比,利用能够加快系统的开发过,提高工作效率。可以工作在两种模式:软件仿真()模式和硬件仿真()模式。前者不需要在芯片运行,在计算机上就可以模拟指令集与工作机制,主要用于前期算法仿真与调试。后者实时运行在芯片上,可以在线编制及调试应用程序。主要有以下特性和功能:集成可视化代码编辑界面,可以直接编写、

2、汇编、头文件及文件等。集成图形显示工具,可绘制时域、频域波形等。集成调试工具,可以完成执行代码的装入、寄存器和存储器的查看、反汇编器、变量窗口的显示等功能,同时还支持、源代码级的调试。集成代码生成工具,包括汇编器、/、编+译+器和链接器等。支持多调试。集成断点工具,包括设置硬件断点、数据空间读/写断点、条件断点等。集成探针工具,可用于算法仿真、数据监视等。提供代码分析工具,可用于计算某段代码的执行时间,从而能对代码的执行效率做出评估。支持通过来扩展的功能,可以实现用户自定义的控制面板、菜单、自动修改变量或配置参数的功能。支持技术,可在不暂停目标系统运行的情况下,实现与其他应用程序的数据交换。提

3、供开放的技术,支持第三方的插件,支持包括软件仿真在内的各种仿真器(需要安装相应的驱动程序)。提供工具,增强了对代码的实时分析能力,如分析代码的执行效率、调度程序执行的优先级、方便对系统资源的管理或使用(代码/数据空间的分配、中断服务程序的调用、定时器的使用等),减小了开发人员对硬件知识的依赖程度,从而缩短了软件系统的开发进程。与集成开发环境有关的应用软件开发中的模块结构如图所示。在中选择已支持的处理器型号,自己编写代码或加载实时操作系统开发应用软件,编译后进行软件仿真或硬件实时仿真调试,对软件进行评估。在应用开发中,可以加入第三方合作伙伴提供的应用资源。集成开堂环境中间件Flmsh编程第三方伙

4、伴提供的软件厉真、应用程序及图瑕代码开发图3-5基于CCS集成开发环境开发应用软件的模块结构332CCS集成开发环境的安装集成开发环境的安装步骤如下:()这里我们安装的是版本。进行系统安装时,先将安装盘插入驱动器中,运行光盘根目录下的安装文件,稍等几秒钟就会出现如图所示的安装界面。选择“”选项,执行下一步。2)执()上其他设置按钮继续iComposer沱TelconeSetupAdobeAcrobatReader(requiredfordocumentation)DocumentationCustomerSupportGuide.ICodeComposerSetupispreparingthe

5、InstallShield(R)Wizardwhichwillguideyouthroughthe:ofthe丄setupprocess.Pleasewait.welcometotheCodeComposerStudioSetupprogram.ThisprogramwillinstallCodeComposerStudioonyoicomputer.ItisstronglyrecommendedthatyouexitallWindowsprograms已u门门i门thisSetupprogram.ClickCanceltoquitSetupandthencloseanyprogramsyou

6、haverunning.ClickNexttocontinuewiththeSetupprogram.WARNING:Thisprogramisprotectedbycopyrightlawandinternationaltreaties.Unauthorized已productionordistributionofthisprogramoranyportionofilmavresultinseverecivilandcriminalpenalties,andwillbeprosecutedtothemaximumextentpossibleund已law.图3-8CCS安装过程4)提示确认没

7、有运行病毒检测软件,如图3-所9示,按“确定”按钮消除警告对话框,继续下一步骤。()按如图所示进行设置,选择中“”选项,点“”按钮进行下一步骤。()如图所示,按“”按钮完成本步骤的操作,进行下一步骤。()如图所示,按默认选择要安装的组件(不需要改变),按“”按钮完成本步骤的操作,进行下一步骤。所示,选择默认的安装目录。按“”按钮完成本步骤的操作,进行(8)如图下一步骤。9)如图3-1所4示,按“图3-13CCS安装过程(八)”按钮完成本步骤的操作,进行下一步骤。(10)完成上一步骤之后,自动执行下面的步骤,如图3-1所5示,这个过程可能需要较长的时间。安装过程中的界面,如图3-1所6示。Onl

8、inetutorialMultimediaproductdemonstrationsWebcastsandon-linetrainingOneandfourdayworkshops,正在程序文件信息,如图图3-16CCS安装过程epimwnInstallingDSP/BIOSTextualConfigUtility图3-18CCS安装过程(十三)11)完成上一步骤之后,弹出如图3-1所9示对话框,直接点“确定”按钮。图3-19CCS安装过程(十四)(2如图所示选择自己需要的操作,点“”按钮完成的安装。SetupCoaplete尽量不要选择CodeComposerStudiohasbeensuc

9、cessfullyinstalled.Elyregisteringyourpurchase,youwillreceiveup-to-dat已emailnotificationofpatches,updates,andnewversions.YoumayregisteromlinE:nowifyouhaveInternetaccessoryoumaymailinyour已gistr-ationcard.洞已gisterCodeComposerStudioon-lindfFleadreleasenotes(Anti-Virusalert)Ifyouchoosetoregistercimli门已yo

10、uwillneedtobeconnectedtotheInternet.Eachoftheseoptionswillopeninanewweb-browserwindow.图3-20CCS安装过程(十五)丨Finish确定”按钮完成操作。图3-21CCS安装过程(十六)安装完毕后,安装程序将自动在计算机桌面上创建如图3-2所2示的“与“C)”快捷图标。CCS2SetupCCS2(nC2000)(nC2000)图3-22“CCS2(DC2000)”与“SetupCCS2(DC2000)”快捷图标333CCS集成开发环境的设置在安装软件之后、运行软件之前,首先需要运行设置程序,根据用户所拥有的软、

11、硬件资源对进行适当的配置。.设置工作在软件仿真环境可以工作在纯软件仿真环境中,就是由软件在计算机内存中构造一个虚拟的环境,可以调试、运行程序。但一般软件无法构造中的外设,所以软件仿真通常用于调试纯软件的算法和进行效率分析等。在使用软件仿真方式工作时,不需要连接开发板和仿真调试器等硬件。()启动桌面上的C)应用程序,进入CCS设置窗口。()在出现的窗口中按标号顺序进行如图所示的设置。单击选择此配置F243XDS510EmulatorF243XDS560EmulatorF2810DeviceSinnilaturF2810XDS510EmulatorF2810XDS560EmulatorF2812D

12、eviceSimulatorLd单击输入配置J丿丿F:iniiErnii:iiULess:ill:dll:ill原先配置Import匸onFigurationAvai1atleConfi舀ir注ti口11吕Close图3-23CCS设置驱动界面(3)接着在出现的如图3-24所示的窗口中选择“否(N)”。Configm-aticmDescriptionSimulatestheTMS320F2812DSF臣ShowthisdialognexttiniESmtupi弓A.dv:=LTLCed1SaveandQuitj单击完成和保存设置图3-24启动CCS对话框此时CCS已经被设置成Simulator

13、方式(软件仿真TMS320F2812器件的方式),如果一直使用这一方式就不需要重新进行以上设置操作了。设置工作在硬件仿真环境设置CCS通过XDS51硬件仿真调试器连接C2000开发板进行软件的调试和开发。在进行CCS下面的设置之前,应该先安装好XDS510硬件仿真调试器,具体的安装方法可参阅XDS51CT商提供的使用说明书中的相关章节进行。(1)启动桌面上的()应用程序,进入CCS设置窗口。(2)在出现的窗口中按标号顺序进行如图3-所25示的设置。其中标号第2步选择的内容以使用具体公司的的说明书为准,不同公司的安装后此项内容可能不相同。此配置厂单击输、入配置冬、厂单击清除、原先配置ulator

14、)-CodeCoposerStudioX/F2812DeviceSImuIator/CPU-28xx(Siulator)-Code.File三|霑團鶴矗|也釦毁爽凰國国回画區图3-31CCS的启动界面发环境。S退出所示可以退出CCS集成开EditViewFrojectDebugFrofilerGELOptionToolsDSF/BIOSWindowHelpFiles+_|GELfiles|Projects疑奉|嵌勰|匡H|/Ctrl+0单击此按钮Ctrl+S可退出Fiint.Ctrl+PPrintFreviewRecent匕菜单RecentRecentRecentRecentLaijjLizh

15、Setup-32CCS的退出CFUHALTEDWorkspaceFileI/O.SaveAs.SaveAllLoadFrogiiiTi.ReloadFtpgramLoadSj-TTibolsReloadSymbolsUrLloadSj-TTibolsLoadGEL.DataSourceFilesWorkspaceEFri:igr:diTiFilesSyTTibijlEGELFiles选择此项可退出Closethe:activewindowand.3.4一个简单驱动程序的开发本节使用集成开发环境安装目录下文件夹中的实例介绍在中创建、调试和测试应用程序的基本步骤。在整个示例的练习过程中,将会了解到

16、的主要特点,也将了解工程文件的管理,这可以作为以后使用深入开发软件的入门基础。前面已经介绍了的安装、设置、启动与退出的方法,并且知道即支持硬件仿真同时也支持软件仿真。同样地,这里的“”实例即可以运行在软件仿真模式下,又可以运行在通过仿真调试器连接目标板的硬件平台上。为了方便演示说明,建议使运行在软件仿真()环境下。3.4.1创建工程文件任务描述:在中建立一个新的工程文件,它将从外部数据文件获取数据,并对得到的数据进行数学运算,最后显示输出数据的图形。创建工程文件的步骤:()启动。双击桌面上的快捷图标,快速启动集成开发环境。()如果安装在中,则可在目录下建立文件夹。(若文件、文件拷贝UseExt

17、ernalMakefile.ExporttoMakefile.,.5our匚已Control将安装在其它位置,则在相应位置创建文件夹。)()将目录中的文件、文件、文件、文件、文件及到上述新文件夹。()如图所示,选择菜单“”的“”项。图3-33创建工程文件5)弹出的创建工程文件对话框,如图所-所所示4,按图示的编号顺序操作建立工程文件。完成单击完帮助成设置图3-34新建工程展开主窗口左侧工程管理窗口中“”下新建立的“”,其各项均为空。3.4.2向工程添加文件()选择菜单“对话框中选择文件目录为击“打开”按钮。(2)选择菜单“,”项;在“选择显示出来的文件“”并点并点击“打开”按钮。()所需的汇编

18、指令。”项,在文件类型框中选择”,选择显示出来的文件“”与“”,文件包含了设置跳转到该程序的入口点的中断对于更复杂的程序,可在文件定义附加的中断向量。示(3)选择菜单“(显没的显;”显,没选择显显示示出来的文件“目标系统提供运行支持。()点击紧挨着、表,它称之为“工程管理窗口(注意此时包含文件(中列出的目录(从左到右)。(汇编器)环境变量定义中的目录(从左”项,在文件类型框中选择”,选择显示出来的文件“”并点击“打开”按钮。文件包含程序段到存储器的映射。()选择菜单“”的“”项,进入编译库文件夹()。在文件类型框中选择“”并点击“打开”按钮。该库文件对、和旁边的符号展开)”,如图所示。)还没有

19、在工程管理窗口中出现。在工程的创建过程中,扫描文件间的依赖关系时将自动找出包含文件,因此不必人工地向工程中添加包含文件。在工程建立之后,如果编译过程能正常通过,包含文件会自动出现在工程管理窗口中。如果需要从工程中删除文件,则只需在工程管理窗口中的相应文件上点击鼠标右键,并从弹出菜单中选择“”即可。在编译工程文件时,按下述路径顺序搜索文件:包含源文件的目录。编译器和汇编器选项的列在(编译器)和到右)。图3-35工程管理窗口3.4.3查看源代码在ProjectView窗口中双击volume.c文件,源程序就显示在CCS窗口的右边。请注意该程序中的以下部分:在进入函数后打印出一条消息,应用程序就进入

20、无限循环状态。在此循环中,主函数调用和函数。在函数中,将输入缓存区中的每一个数值与增益相乘,并将结果存入输出缓存区;程序也将调用汇编载入()例程,该例程按照传递给它的取值来消耗指令周期。函数是一个空函数,它的作用类似于语句。这里不使用代码来完成/而是利用中的一个探针来从主机的文件中读入数据并放入区域。此法优于用代码来完成功能。程序源代码如图3-36所示。#includevstdio.h#includevolume.h/*全局变量声明*/intinp_bufferBUFSIZE;/*数据缓冲*/intout_bufferBUFSIZE;intgain=MINGAIN;/*音量控制增益*/unsi

21、gnedintprocessingLoad=BASELOAD;/*当前处理程序加载值*/structPARMSstr=2934,9432,213,9432,&str;/*函数原型声明*/externvoidload(unsignedintloadValue);staticintprocessing(int*input,int*output);staticvoiddataIO(void);/*=main=*/voidmain()int*input=&inp_buffer0;int*output=&out_buffer0;puts(volumeexamplestartedn);/*无限循环*/wh

22、ile(TRUE)/*使用探针断点从外部主机文件上读取数据并显示输出数据的图形*/dataIO();#ifdefFILEIOputs(beginprocessing)/*故意设置的语法错误*/#endif/*应用增益处理*/processing(input,output);/*=processing=*/staticintprocessing(int*input,int*output)intsize=BUFSIZE;while(size-)*output+=*input+*gain;/*additionalprocessingload*/load(processingLoad);return(

23、TRUE);/*=dataIO=*/staticvoiddataIO()/*数据I/O*/return;图3-36volume.c源代码3.4.4编译和运行程序(1)编译链接工程。选择菜单“Project”的“RebuildAll”项,或单击工具条中的理按钮。注意编译过程中CCS主窗口下部“Build”提示窗中显示编译信息,最后将给出错误和警告的统计数。(2)下载程序。执行FileLoadProgram,在随后打开的对话框中选择刚刚建立的C:timyprojectsvolumeDebugvolume文件,点击“打开”按钮。CCS将程序加载到软件仿真环境上,并打开Disassembly窗口,该窗

24、口显示反汇编指令。(注意,CCS还会自动打开窗口底部一个标有Stdout的区域,该区域用以显示程序送往Stdout的输出。)(3)点击Disassembly窗口中一条汇编指令(点击指令,而不是点击指令的地址或空白区域)。按F1键,CCS将搜索有关那条指令的帮助信息,这使用用户便于获得不熟悉汇编指令帮助信息。(4)运行程序。在执行C语言的程序时,为了快速地运行到主函数调试自己的代码,可以先使用DebugGomain命令,然后点击工具栏按钮或选择DebugRun。当运行程序时,可在Stdout窗口中看到程序运行时输出的“volumeexamplestarted”消息,如图3-37所示。JkhSul

25、oilt冈IDEIDCIIfolumeexamElestartedOutput图3-37Stdout窗口输出信息3.4.5修改程序选项和纠正语法错误在前面运行的程序中,由于没有定义FILEIO,预处理器命令(#ifdef和#endif)之间的代码实际上没有运行。这里将使用CCS设置一个预处理器选项,并对出现的语法错误进行查找和纠正。(1)点击选择“ProjectBuildOptions.”。(2)从“BuildOptionsforvolume.pjt”窗口的Compiler栏的Category列表中选择Preprocessor。在“DefineSymbles”框中键入FILEI0并按Tab键。

26、现在窗口顶部的编译命令包含-d“FILEIO”选项,当重新编译该程序时,程序中#ifdefFILEIO语句后的源代码就包含在内了,如图3-38所示,点击“确定”保存新的选项设置。图3-38预定义符号FILEIO(3) 点击(RebuildAll)鶴工具栏按钮或选择“Project-RebuildAll”。在工程选项改变后,必须重新编译所有文件。(4) 窗口底部的编译信息输出区出现一条编译错误的消息,大致意思是提示在volume.c文件中的第68行有语法错误,在句末缺少“;”结束符号,如图3-39所示。(5) 双击描述语法错误位置的红色文字。注意到volume.c源文件是打开的,光标会落在第68

27、行上,查看附近代码,发现“puts(beginprocessing)”句末少了分号。(6) 修改语法错误(缺少分号)。注意,紧挨着编辑窗口题目栏的文件名旁出现一个星号(*),表明源代码已被修改过。当文件被保存时,星号随之消失。(7) 选择“File-Save”或按Ctrl+S可将所作的改变存入volume.c文件中。(8) 点击(IncrementalBuild)工具栏按钮匮或选择“ProjectBuild”,CCS重新编译已被更新的文件。346使用观察窗口观察structure变量观察窗除了观察简单变量的值以外,还可观察结构中各元素的值。(1) 执行“View-WatchWindow”打开观

28、察窗口。(2) 在volume.c中,用鼠标双击一个变量(比如gain),再单击鼠标右键,选择“QuickWatch”,CCS将打开QuickWatch窗口并显示选中的变量。(3) 在volume.c中,选中变量gain,单击鼠标右键,选择“AddtoWatchWindow”,CCS将把变量添加到观察窗口并显示选中的变量值。(4) 在观察窗口中双击变量,则弹出修改变量窗口。此时,可以在这个窗口中改变变量的值。(5) 把str变量加到观察窗口中,显示着的一行出现在观察窗口中,如图3-40所示,“+”符号表示这是一个结构。类型为的结构被声明为全局变量,并在文件中初始化。结构类型在中定义。图3-40

29、观察窗口(6) 点击变量左边的“+”,观察窗口可以展开结构变量,并且显示结构变量的所有元素以及它们的值。347为文件增加探针(测试点)本节介绍CodeComposerStudio探针断点的使用方法,这种断点允许用户在指定位置提取/注入数据。Probe断点可以设置在程序的任何位置,当程序运行到Probe断点时,与Probe断点相关的事件将会被触发,当事件结束后,程序会继续执行。利用探针来从计算机中的文件读取数据,对于算法开发来说是很有用的。探针的具体用途如下:将主机文件中的数据(如利用Matlab产生)传输到目标DSP板的缓冲区中,供相应算法使用。将计算输出从目标板的缓冲区中取出并存放到主机的文

30、件中,以便分析。用来利用数据更新某窗口,如图形显示窗口。本部分利用探针将主机文件数据传送到仿真环境作为测试数据,另外,当到达探针位置时,利用断点来更新所有打开的窗口。()点击工具栏按钮皙或选择“-”。()选择“-”并选取“”,然后点击。()在窗口中,双击“”文件。()将光标置于主函数中的这一行上。函数起占位符作用(无任何功能的函数)。现在该函数是一个方便的位置来设置探针,以便从主机传入数据。()单击工具按钮孕(),选择边区标出一个菱形小蓝点,标示探针已经设置。若选择边区无效,可以使用“一-”来设置,在该行用蓝色高亮来显示,用“-e来改变颜色。()从菜单选择“”,在弹出的对话窗中可选择输入和输出

31、文件。(7)在FileInput标签下,单击“AddFile”。()浏览到建立的工程文件夹并选择,单击“”按钮。(可在文件类型项目下选择数据文件格式。文件包含了一个正弦波形的进制数值)接着出现了的控制窗口。当执行程序时,可利用该控制窗口来在数据文件中作开始、停止、回卷、快进操作。如图4所1示。(9)在并选中“图3-41sine.dat文件控制窗口对话框中,改变“”为“”,修改“”框,如图所示。图3-42FileI/O设置Address域定义了来自文件的数据应放到哪里。inp_buffer是在volume.c中声明的大小为BUFSIZE的一个整型数组(BUFSIZE是定义于volume.h的一个

32、常量。)Length域定义了每次探针点能从数据文件中读取多少样本。由于在volume.h中定义了常量BUFSIZE为(0x64),所以这里设置Length域为100。WrapAround选项使得当CCS读取数据到文件末尾时能够再次从文件头开始读取。即使数据样点只含有100个0值且每次探针到达时读取10个0值,也可将数据看作连续的数据流。(0单击“”按钮,使得对话框中的标签出现。(11) 在ProbePoint列表中,单击“volume.cline61NoConnection”行使之高亮显示。(12) 在ConnectTo域,单击下拉箭头并从列表中文件选择sine.dat。()单击,这样列表将显

33、示为探针与文件已经连接。单击“确定”按钮,那么现在对话框就将显示文件与探针相连。()在对话框,单击“确定”按钮,退出对话框。3.4.8显示图形如果现在就运行程序的话,你将无法了解到更多的程序运行时的信息。可以在和数组的地址范围内设置观察变量,但是需要设置观察许多数据,并且显示的只是数据,而不是数据相应的曲线图(波形图)。提供了多种用图形处理数据的方法。在本例中,将看到一个基于时间绘制的图形。(1)选菜单ViewfGraphfTime/Frequency。()在对话框中,修改为,为,为,为,为,为,为。如图所示。图3-43图形属性对话框()单击“”按钮,显示数据的一个图形窗口就出现了。()在上述

34、窗中右击鼠标,从弹出的菜单中选择。()再次选菜单ff。将修改为,并将修改为,其余的设置都不变。()点击“”按钮,又出现一个图形窗,在该图形窗内右击鼠标,从弹出的菜单中选择D3.4.9执行程序和绘制图形到目前为止,已经放置好了一个探针,它可临时暂停目标系统,将数据从主机传送到目标系统,并将恢复目标系统应用程序的运行。但是,探针不能刷新图形。在这里,将设置一个可刷新图形的断点,使用命令在遇到断点后,自动恢复目标系统应用程序的运行。,()在源程序窗口中,将光标放置在行。()点击()工具栏按钮i或按,该行显示为红色和蓝色高亮,表明在这一行已经设置了断点和探针。在同一行上既放置探针又放置断点,它能够使目

35、标系统只暂停一次而完成两个操作:数据传输和图形刷新。(3)重新安排窗口以便能同时能看到这两个图形。()点击工具栏按钮塞或按运行程序。命令与命令相似,它使目标系统应用程序一直运行到断点,随后,目标系统应用程序暂停并刷新窗口。但是,与命令不同的是,命令恢复目标系统应用程序运行到下一个断点,而且此过程是连续的,直到目标系统被人工停止。所以,命令可看作运行一中断一继续(-)过程,如图所示。(5)注意每个图形包含2.个5周期的正弦波形,且在程序运行过程中两个图形反向。每次到达探测点时,从文件中得到个值,再将这个值写入地址。符号相反是因为输入缓冲区包含的值是从文件中读取的,而输出缓冲区最后的值是经过函数处理后得到的。图3-44图形显示

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!