TI-DSP软件开发工具CCS的使用.ppt(精)

上传人:xin****18 文档编号:114623877 上传时间:2022-06-29 格式:DOCX 页数:23 大小:1.09MB
收藏 版权申诉 举报 下载
TI-DSP软件开发工具CCS的使用.ppt(精)_第1页
第1页 / 共23页
TI-DSP软件开发工具CCS的使用.ppt(精)_第2页
第2页 / 共23页
TI-DSP软件开发工具CCS的使用.ppt(精)_第3页
第3页 / 共23页
资源描述:

《TI-DSP软件开发工具CCS的使用.ppt(精)》由会员分享,可在线阅读,更多相关《TI-DSP软件开发工具CCS的使用.ppt(精)(23页珍藏版)》请在装配图网上搜索。

1、第三部分TIDSP软件开发工具CCS(CodeComposerStudio)的使用1CCS集成环境IDE:.(IntegratedDevelopmentEnvironment)-不仅仅是代码生成工具-具备基本调试功能,还具备实肘分析的能力-支持整个软件开发过程:-设计-彳弋码生成(项目建立,源程序编写,配置文件)一调试(语法检查,探测点,日志log功能)-实肘分析(实时调试,实时状态显示,任务切换跟踪)E实时(RealTime)是DSP的灵魂尊TexasInstrumentsREALWORLDSIGNALPROCESSING”LCCS集成环境IDE1.1CCS集成环境IDE的组成generat

2、ionCodeComposerproectDSPapplicationprogramDSP/BIOSHostemulationsupportTargethardwareRTDXplug-inCodeComposerdebuggerDSP/BIOSplug-ins3rdpartyplug-insOLEapplicationusingRTDXctg.cmdctg.h6x(Conngdatabase)CodeComposereditorsourcefilesBMELab1.1CCS集成环境IDE的组成包括主机和目标系统两部分CCS首先是作为代码生成工具,作为代码生成工具有这样一些输入:配置工具产生的

3、配置文件,DSP/BIOSAPI的库函数。自己的程序文件.c,.h,生成可执行文件主机方:最低层是JTAG,上面是调试器,再上面是CCS的各种插件,包括DSP/BIOS插件(实时调试),还用RTDX(实时数据交换)目标系统一方:最底层是硬件和JTAG,向上是DSP/BIOS实时操作系统(这是可选的也可以没有操作系统,完全自己管理),再向上是应用程序.尊TexasInstrlmentsREALWORLDSIGNALPROCESSINGBMELab1.2CCS代码生成工具流图Figure11SoftwareDevelopmentFlowCcompilercsourceFilesAssemblers

4、ourceAssembly-optimizedfileLinearassembly:Executable:COFFAfiemblyoptimizer1.2CCS代码生成工具流图每个白色框代表一种代码生成工具,条纹框是它的输入文件类型比如:c编译器(C程序),汇编优化器(线性汇编程序),汇编器(汇编),建库工具,连接器最后可执行文件由调试器加载目标系统以上的工具时常用和通用的.其它的工具hexconversionutility16进制转换工具,把COFF转换为其它格式文件写到EPROM中cross-referencelister产生交叉参考列表,它列出定义的symbol,定义symbol的行,以

5、及用到symbol的彳立置(行),还有symbol的类型,编译和连接肘分酉2给symbol的j直.absolutelister,产生连接后的coff文件的绝对地址列表Archiver:文档管理工具一打包.c源程序宏源文件C编译器CCS代码生成工具流图宏文件库汇编源程序COFF目标文件十六进制转换程序可执行的COFF文件EPROM编程器玉叉应耿別表程屛厂建库实、J用程序丿支持运行的库函数PC机及DS调试工具C54x曲TexasInstrumentsrealworldSignalprocessing1.3.1CCS2.0界面(1)A?CEcxxSsrvulalar(TkcbkXnxlruaaaii

6、J/LlUCGKJICadCcnpoxarSlvuLiocGgor*k-lle.filstVii*hrpjactabughrtilrOpUaa炉.7*vli.Htadov)hlp凿声*|.1-些f?|hc22翕砂臥|耳好淞+*丨盘FH%久冬TFileViewzBooktriafksIititinput10;void-floatf=10.0:int1:i=_spiat(f);for(i=0:i10:i+)f+inputi:I1JmZEEIEh8*”/rlfixtest.c-gkq-mv6700-frH:VterIcxc6progtte*st.clnk&xtest.jnakIMS320C62COF

7、FLinkerVeraion.00Copyright(c)1996-2000TexasInstrumenteIncorporatedDaiIdComplete;,Errors”0Warnings.1.3.1CCS2.0界面(1) CCS提供一个类似VC+的集成开发环境,使用比较方便有菜单,工具条,左边是项目窗口,右边是代码编辑窗(和图形显示窗口),下边是编译器编译结果,和变量显示窗,和寄存器观察窗 Project工具条:编译,连接,设置三种点:断点、探点(probe)、时间分析点(profile)调试工具条:程序step运行(4种),连续运行(2种),查看变量、寄存器、存储器,调用堆栈,反汇编

8、窗口 Standard!具条:新建,保存,打开,查找,剪贴,Findinfiles功能比较好用编辑工具条:mark(大小括号)查找,缩进(outdent),书签尊TexasBMELabCCS提供一些类似VC的代码编辑功能-语法高亮显示原程序和反汇编同时显示(逐条语句对应,但优化后是模块对应)1*testc-1口1df/oidmam()0000056007EFG05AADDL20xFFFFFFF8,SP,SPI::floatf=10.0;00000564OOOOCOFOSUB.LLAO,AO,AO0000056800209068MVELH.S1Ox412Q#AO0000056C003C22F4S

9、TO.D2AO,*+SFOxlinti;i=_spint();00000570OOOOG158SPIN?.LIAO,A0;0000057400004000HOP30000057G003C42F4STO.D2AO,+SPOx2for(i=0:1_auto_init(C变量初始化)T返回后c_irrt00调main()函数.Main()完成后,c_int00调exit,做一些清楚工作,如关闭打开的文件exit在调abort,无限循环利用探点(probepoint)流入流出(streaminandout)存储器数据图形化显示数据维数据,二维图象,眼图等代码剖析(Profile)计算代码运行时间1弋1

10、TexasInstrumentsRFALWORLDSIGNAlPROCESSING1kBMELab*1.3.4CCS2.0调试功能(3)WatchWindow-input=0x8000C0000=11=22 =33 =44 =55 =66 =77 =88 =99 =10f=65丨1卜;|川补10:Memory(32-BitHex-CStyle)0x00000000:0x00000000:0x00000010:0x00000020:0x00000030:0x00000040:0x000000500x000000600x000000700x000000800x00000090OxOOOOOOAOO

11、xOOOOOOBOOxOOOOOOCO0x00000000titbiilr-1167.Jnlxl|int:r_hocik()Re离istorsC6701Re,1.3.7CCS2.0界面(2)18主机方的RTDX库是和CCS集成在一起的主机一方有一个函数接口,目标方DSP上也有一个函数接口主机应用程序通过COMAPI发送数据到DSP,或接收数据,应用程序可以按自己的方式来显示数据,RTDX可以脱离DSP/BIOS使用,给用户灵活性下一张图是一个例子,用LabView作一个显TJX界面,LabView调用RTDXAPI得到DSP传来的数据尊TexasInstrumentsRFAlWORLDSIGN

12、AlPROCCS:SINGBMELabCCS小结CCS不仅仅是代码生成工具,对软件开发的各个阶段都有支持提供底层实时操作系统DSP/BIOS提供RTDX新的实时调试手段,与CCS集成,不需要自己添加额外的用于调试的硬件(但是速率比较低)生2简单程序开发流程(1)建立项目尊TexasInstrumentsrealworldsigkProjectNew选择一个目录,生成一个项目文件test,inak2简单程序开发流程(2)添加文件Project-AddFilestoProject.添加文件(.c,.lib,.cind,.sa,.asm.)IBFrojectview望TilesSJ-QGELf订出口

13、Frejctt&st.m|=|cBTgo.cmd口DSF/BIOSC&nfigliIncludeB|1Librarigm:圖rtsBTOl.libSrlSourceFltest,cAddFiles.ScanAllDependeitciesBuildCloseOptions.)FileView日ociknrwks2简单程序开发流程(3)代码编辑双击项目窗的文件名,开始编辑源程序I-alxl-fl|x|/CbxxxSinuLitor(TexasInstrJirients)/CPU-C57OLCadeComposerStudioiSimulator)-test,mak-t.豪FjI*gditVi&h

14、ProjectDetujProfilerOption聲LToolsIflindowHelpgFiles庄口GEL.filasl-l2jFrojecttest,nak=)c6TgoendmIST/BIOSCcnfig-QjTnclada3-|ILibriesQi-t=6701.1三宙直題喑昌層inrinputID;voidunc1();main()funcl():i=_spint(f);/*Comment*/;iBu订dB_JGEISLJPrcCloseCompileFileBuildRebuildAllSKowIIependene1esSeanAllDependenciesOptions.Re

15、centprojectfiles或p肚戲臥丨邕曰mtinput10:一zoidfunc1();:一zoidmain()ifloatf=10.0;int1;fund();i=_spint(F)/*Comment*/for(i=;iLoadProgram.设置断点,诵过WatchWindow观察苓量单步执行l-ln|x|-|g|x|条代表当前执行到那条语右)紫色条代表断10.0;ProfilerOptionGELToolsWiniowHelpvoidmain()0;i10;f+=inputi1;-C6T01CodeComposerStudio(Simulator)-testmak-test,cin

16、tinput10;voidfund();3if猛風哦籐舞I婕字I匡运BSP/BIOSConfif|1IncludeL1Librxies口Source2简单程序开发流程(7)Profile(剖析)ProfileEnableClockI/CBxnxSifbulatr(TwuIiLEtr-in&iits)/CPU-CBTQLUdAcConpostrStudioiSiirulfctor)-fast.akcBQBlileEditXievprojectQebueFcofilerOptionSSLTool,EmiknHelp-laixi尊TexasInstrumentsREALWORLDLItsrHAUED

17、/L1JJJj涣开闿誓g詡窈Q礦收阵箱|固如iutinput10;voidfuTiclf):LocationCount|AverageTotalblaxLJuiuii.|Mimciutnlt?st.cLine141027.12712B19test.cline11112.121212test.c1.丄ng1014.04q4tfest.cline4aD.0n口设詈profilepoint(绿色条)每个绿色条在窗中对应有一行统计数字,用来统计profilepoint(绿色条)之间的时钟数调试器内部有时钟计数,最后查看每一个观测点的运行时间spirit(fj10;f+-inputi1:2简单程序开发流

18、程(7)总结按项目管理图形化的编译选项设置提供各种调试功能,断点方式,Profile方式卜面介绍一个例子,将学习到probepoint(用宇从文件读人数麻),鹵形显示,animation等调试方法*3算法测试和文件10(1)探点Probe(探点)1)适合于算法的开发,功能验证2)可以完成这样的功能从一个文件中读入数据到一个DSP的缓冲区将一个DSP的缓冲区写到文件中3)探点类似于断点,又不同于断点运行到Probepoint,DSP会停顿下来完成一些动作后(读写文件),程序继续运行4)文件输入输出的设置:FileFileI/O.5)Probe的设置:类似断点的设置(用工具条)或1TexasIns

19、trumentsREALWORLDSIGNALPROCESSINGT*q.3算法测试和文件10(1)探点r糜FileInput|FileOutput|AddFileRemoveFiteF?AroundNotConnectedinp_buffer100AddProbepointIHelpProbepoint:Address:Length:8说|如亦|KZoomlnI|x|EditOptionsHelpFrojectTcolbar釁圜鶴蓟也觀壇敢I囱巒3算法测试和文件10(2)图形CCS支持一维图形,二维图象(标准的数据格式),眼图等显示方式有放大、缩小等功能可以方便直观地判断算法执行的效果Inp

20、utBuffer(50.-98E3|llutpiutBuffeiBBQIwaa-ri_一r一一J-1000一一02505C1.075.0S9.0(50,98)TimeLinFixedScale尊TexasInstrumentsREALWORLDSIGNALPR0CE$!5ING3算法测试和文件IO(3)GELGEL=GeneralExtelisionLanguage种类似C的解释型语言,可实现循环等程序结构提供基本的程序控制命令,类似以前emulator提供的命令,GEL_Go(),GEL_Reset()等等可以制作菜单(可以加入到CCS主菜单),对话框,滑menuitemHApplicati

21、onControl11dialogLQad(loadParmLoad11-IiprocessingLoadloadParm;I-,1.sliderGai口0,10,1fgainParm)lgain:gainParm;扌i_14基于DSP/BIOS程序的调试(1)DSP/BIOS提供“虚拟仪器”的调试方法以图形化的方式观察程序执行的流向,任务如何调度.切换的以图形化的方式观看CPULOAD(CPU负荷),了解CPU还有多大的运算能力应用程序必须是基于DSP/BIOS的程序,DSP/BIOS提供图形化的界面设置各个模块的参数或1TexasInstrumentsrealworldSignaiproc

22、essing4基于DSP/BIOS程序的调试(1)iConfigl回3HWI-HardwareInterruptServiceRoulineEstimatedDataSize:264日E$t.Min.StackSize(MAU?):304GlobalSettingsCLK-ClockNanagerHST-HostChannelManager-HardwareInterruptServiceRoutineManagerPropertyFunctionSt.InterruptS.ExternJExternalExternalExternalIn.In.In.In.ValueIPRAMIPRAMlo

23、w-to-high,low-to-high.low-to-high.low-to-high.EIDL-為IJCK-E|苗|LOG_IdleFunctionMsnsgcfResourceLockManagerEventLogManagerMail*boxManager-MemorySectionManagerPIP-BuffPipeMan乩駅丫PRD-PeriodicFunctionManagerQUEAtomicQueueManagerR.TDX-Real-TimeDataExchangeSettingsSEM-SemaphoreManagerSIO-StreamInputandOutputM

24、anagerSTS-St.atisiicsOLjectManagerIaskManagerITsfer-DsfinsdDevicesDON-SotwareGeneratorDriverDHL-HostLinkDriver4基于DSP/BIOS程序的调试(2)通过RTA设置观看的内容通过ExecutionGraph观察任务切换通过CPULoadGmph观察CPU负荷用过STS观察事件的统计都是DSP/BIOS提供的功能IGNAlPROCESSING1*D忆匚essingbwlTSKidetherThreadsSEMPdsIsPRDTcksTimefti-certion?CountTotdlMaw

25、AverageprocessingLoad_STS33399226093矢27E.31”enableSWIlugging厂enablePRDloggingWenab怎匚LK.logging厂enableTSKloggingenableSWIaccumulator?些调试经验(1)1) 次新增的调试代码不能过长.2) 防御式编程:如通信中的等待时间不能过长3) 对感兴趣的事件做记录:中断发生次数,等待超时计数4) CCS的运行中添加断点和运行前添加断点5) 窗刷新的影响:大量的数据更新回影响底层的时序6) 随时关系程序运行肘间,过长合影响时序,设置计算器.1尊TexasInstrumentsRE

26、ALWORLDSIGNALPROCESSingtBMELab刁.6-些调试经验 7)注意数组的越界和指针的使用:也是其它编程通常的错误,这个错误能其它部分修改,尤其对硬件计数器的修改导致各种错误,调试方法:递逬增加代码,看map文件,了解前后关系 8)多用服务中断程序,但中断服务程序不能带参数,只有通过全局变量传递值,所以全局变量常用. 9)volatile关键字.背景中修改,不被优化掉. 10)关于中断嵌套:长中断被频繁中断中断,允许嵌套是,关闭自身,即不允许重入.原因在于打乱时序关系. 11)观察中断间的同步:通过设全局变量和记录数组观察嵌套中断发生肘被嵌套中断程序的运行状态、关于TIDS

27、P软件开发的学习 1)CCS只是一部分-(Tutorial教程入手(100页左右)。其它的用到的再查用户使用手册UsersGuide 2)C的运行环境:C6000的写在优化Ccomp订erusersguide)中7、8章。包括扩充的C的关键字,编程伪指令,寄存器调用规则,存储器模式,C语言与汇编语言的接口; 3)CPU和汇编语言:耗时长的部分用汇编写。C6000写线性汇编要了解CPU结构。 4)硬件知识:其实是不应该省略的。难点:中断,DMA,IOQo中断的实现过程,花点时间最后了解到elk级。 5)参考书:要真正开发应用还要读英文材料。(DSP集成开发与应用实例,张雄伟,电子工业,2002.CCS介绍比较全面或1TexasInstrlmentsRealworldSIGNAlPROCESSSING

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