VisualDSP++集成了两部分:IDE集成开发环境和Debugger调试器,被称为IDDE,具有程序开发调试功能
①源文件编辑
②工程管理
③代码产生(编辑器、汇编器、连接器、分配器和加载器)
④工程编译链接选择
⑤VDK功能:从软件中获取硬件实现详情
⑥工作空间管理(10个)
⑦开发功能切换
⑧多功能调试工具:联合编程源代码、运行命令行、设断点、查寄存器和存储器、对存储器绘图
①创建工程文件:I名称、路径、类型(Standard application)
II处理器、版本、输出文件类型(调试时所设置Executable File和调试完成设置Load File)
②设置工程选项(Project→Project Option):
I Target
II Tool chain
III Setting for(指定输出类型):⑴Debug(工程文件可调试)
⑵Release(工程文件具有限制或不能调试)
③编辑添加工程源文件:
I 添加已有(Project→Add to Project→File)
II 新建(File→New)
III 工程相关性Dependency(.mak文件)决定编译链接顺序,更新工程相关性(Project→Update Dependency)
④设置工程配置选项(Project→Configuration)指定编译链接产生的工程类型:
I Debug(默认类型):编译器产生包含调试信息的目标文件
II Release:产生不包括编译信息的目标文件,同时优化代码
⑤编译链接Debug版的Executable文件:
I 工具栏编译链接图标或“F7”快捷键
II 菜单(Project→Build Project)
III 右单击工程
⑥建立Debugging Session(调试会话)和加载可执行文件(后面详述)
⑦运行调试(Debug)程序(运用Debugger工具):
I 工具栏图标
II Debug菜单的子菜单
⑧编译链接Release版的Load文件:
I Project→Configuration或Project→Option将Debug改为Release
II Project→Option将Executable改为Load
III Project→Option选择Load选项根据用户要求对加载文件进行设置
①设置调试会话(设置调试目标和调试用的工具)新建调试会话的步骤:
I 新建会话(Session→New Session):Select Processor、Select Connection Type、Select Platform:
⑴ Select Processor:Configurator(配置非模拟器环境下的会话,如EZ-KIT评估板)Configurator窗口→新建平台窗口(New ):平台、仿真器设置、器件
㈠Platform:Name、Type(串口和USB方式连接的各种处理器的EZ-KIT、HP PCI仿真器、HP USB仿真器)
㈡ Emulation Settings(自动识别或设置仿真器相关硬件地址,基本不用修改,通过操作系统中的硬件设备管理来查询仿真器的相关地址
㈢Devices:根据需要选择新建、修改、删除、全部删除
⑵(点击Next)Select Connection Type:评估板系统(EZ-KIT)、仿真器(Emulator)、模拟器(Simulator)说明:前两种连接方式需要用户提供硬件平台进行连接,如果VisualDSP++检测不到硬件设备,将弹出错误信息,提示用户连接不上硬件平台
⑶(点击Next)Select Platform:默认即可
⑷(点击Next)显示用户新建会话信息,检查无误后点击Finish
II 打开已经存在的调试会话(Session→Select Session)
②程序执行操作(Debug菜单中):
运行(Run):运行程序直到遇到某种条件(断点或用户干预)
暂停(Halt)
执行到光标所在位置(Run To Cursor):光标的位置可以在源文件窗口或反汇编窗口
执行1行(Step over):仅仅用于C语言程序
单步执行(Step Into)
单步执行当前函数(Step Out Of):单步执行当前函数直到返回到它的调用程序
复位(Reset)
③程序性能分析:I跟踪(Trace TS系列无此操作)显示程序如何执行到某一地址,显示程序的读写和存储器访问,设置步骤:
⑴Tool→Trace→Enable Trace
⑵Tool→Trace→Trace Buffer Depth
⑶View→Debug Windows(打开跟踪显示窗口)
⑷运行程序、查看跟踪执行结果(访问类型RD或WR、内存类型PM或DM、方括号中的地址、读写的数据值)
II线性剖析(Linear Profiling)分析出每段程序的耗时量和在整个程序运行中所占用的比例,为用户分析程序的性能、优化程序提供帮助,完成一次剖析的基本步骤:
⑴编译链接工程完成
⑵Tool→Linear Profiling→New Profiling
⑶在新建剖析窗口中空白处点右键,选Properities,在窗口中可以对全部程序、C/C++子函数及程序段进行分析
⑷运行程序、查看线性统计剖析结果,注意:无论是重新编译还是重新执行程序,都应先将剖析窗口中原有的数值清除(右键点击选Clear Profile)后再运行程序进行分析,否则分析结果可能不正确
④设置观察点:观察点(Watch Point)可以设置某种条件,当满足条件时才暂停程序的执行,断点(Break Point)可以在程序的任意位置上设置,使程序暂停执行。设置步骤:
I Settings→Watch Points
II 设置使程序停止的条件:寄存器(Register)、硬件堆栈(Hardware Stack)、存储器(Memory),寄存器设置:
⑴Register选择:列出了所有寄存器,用户选择需要的寄存器进行条件设置
⑵Watch for Read:读操作满足条件就暂停程序执行(任意值Any read、特定值Read value、读入值作为某种计算操作数Read in computation、读入未定义的值Read uninitial)
⑶ Watch for Write:写操作满足条件就暂停程序执行(任意值Any read、特定值Write value、写入值作为某种计算操作数Write in computation、写入未定义的值Write uninitial)
⑷ Value:读写操作指定值
⑸ Format:读写指定值的格式
⑹ Add、Edit、Delete
III 点击Add按钮,将所指定的观察点加入到观察点列表中,点击OK完成设置,运行程序。
⑤模拟硬件环境(Setting→):中断(Interrupts)模拟在程序的执行过程中产生外部随机中断、数据流(Streams)模拟处理器通过外部端口进行数据传输、Load Sim Loader 模拟处理器通过EPROM或主机等方式的加载过程。
I 中断模拟(用于调试中断服务程序Setting→Interrupts),窗口选项及意义:
⑴外部中断类型(External interrupts):用于设置外部中断的类型,包括FLAG中断、IRQ中断、定时器中断等
⑵Min cycles:中断信号产生的最小指令周期间隔
⑶Max cycles:中断信号产生的最大指令周期间隔
⑷Offset cycles:在第一次中断发生之前的指令周期数
⑸Interrupts:显示已经设置好的模拟中断及其参数
其中的Add、Remove、Remove All按钮用于对模拟中断进行添加、删除等管理操作,设置完后直接运行程序,中断模拟器将按照所设置的方式产生中断。
注意:无论是重新执行程序、重新编辑链接工程还是重新加载已编译过的程序,模拟中断不会取消。只有在模拟中断设置窗口中将其删除,才能停止产生模拟的中断,重新启动VisualDSP++也可以关闭模拟中断。
II 数据流模拟(Setting→Streams)和DMA模拟传输(用于调试DMA传输Simulator→Config DMA File I/O):数据流模拟可以模拟处理器的外部数据总线、链路口、串口等端口,设置步骤:
⑴ TigerSHARC处理器时(Simulator→Config DMA File I/O)弹出DMA传输模拟器设置菜单
⑵ 设置DMA的数据源和数据目的的设置参数:
DMA Channels 选项:DMA通道选择,支持对多个DMA同时进行模拟
Enable Description选项:显示选中的DMA是否被使能
Halt On Error选项:选中选项,DMA在传输过程中遇见任何错误,DMA将停止
Source选项:设置DMA传输的数据源(如果DMA通道从外部获取数据,则设置该选项;如果DMA通道从处理器内部向外送出数据,那么该相关参数不用设置)包括参数:Path选项(设置DMA通道数据传输的数据文件存放的路径)、Preview(对数据文件进行预览,方便用户确认所需传输的数据是否正确)、Circular选项(设置数据文件读取过程中,读取到数据结束后是否采用循环方式再从头读取数据)、On/On New Sequence选项(新的DMA传输采取的方式,Rewind 从数据文件的开头进行数据读取,Continue 从上次DMA传输完毕的数据位置接着读取数据)
Destination选项:设置DMA传输的数据目的(如果DMA通道从处理器内部向外送出数据,那么该相关参数要设置;如果DMA通道从外部获取数据,则不用设置该选项)
包括参数:Path选项(设置DMA通道数据传输的数据文件存放的路径)
Format选项(通过DMA通道输出数据的格式)
Comment选项(写入到输出文件中的注释)
On/On New Sequence选项(新的 DMA传输采取的方式,Rewind 从数据文件的开头进行数据读取,Continue 从上次DMA传输完毕的数据位置接着读取数据)
⑶ 设置完点击OK按钮即可,注意:数据传输需要通过用户程序控制开启,在该窗口中的设置应该与用户程序中设置的DMA通道及其方向一致。
III Load Sim Loader模拟:用于模拟EPROM或主机给处理器加载.ldr文件过程,为用户设计实现处理器加载提供帮助,建立EPROM加载的步骤:⑴ Settings→Load Sim Loader
⑵选从主机加载启动(Boot form Host)或从PROM加载启动,选择加载文件(.ldr文件),选择Debug菜单中的复位后将进入模拟加载过程。
⑶运行程序VisualDSP++将自动完成加载过程。可以通过单步执行程序来观察处理器的模拟加载过程。
⑷如果要从模拟加载环境下退出,需要点击Settings→Load Sim Loader→None of Above
⑥寄存器窗口操作(VisualDSP++主界面Register→右键可以更改寄存器数据格式的显示方式):双击鼠标可以修改寄存器的值,高亮显示后敲入新值并回车。
⑦存储器窗口操作:提供数据格式和编辑、跳转(Goto)、查找(Search)、填充(Fill)、导出(Dump)等功能。
⑴View→DebugWindows→Plot 点击New出现新建画图配置窗口
⑵设置画图配置窗口:Data sets参数(管理已经设置完毕的数据)、Add/Remove/New按钮(对图进行新建、添加、删除等管理操作)、Type参数(绘图类型)、Title参数、Name参数、Memory参数(所需绘图的数据存放的存储器类型)、Address参数(所需绘图的数据存放的存储器起始地址)、Offset参数(所需绘图的数据存放的地址与Address中定义的地址之间的偏移量)、Count参数(绘图所用的数据长度)、Stride参数(地址增量)、Data参数(数据类型)、Settings按钮(绘图的高级设置)
⑶对绘图配置完后点击Add按钮,将设置好的绘图添加到数据集合中,不点击Add按钮,上一步的设置在该窗口关闭后都将无效。
(4)点击OK按钮,VisualDSP++将显示所绘制的图形。说明:可以直接使用鼠标对区域图形进行放大,通过鼠标右键菜单中的Reset Zoom命令可以将图形恢复到满窗口模式;在图形窗口的右键菜单中有光标(Data Cursor),通过移动光标可以在图形窗口的左下角查看光标位置所对应的数据序号和数值的大小;图形窗口允许用户通过导出的方式将图形以图片或者数据的方式进行保存,点击右键菜单中的导出(Export)命令,将弹出导出图形设置窗口。
用户1622042 2013-3-14 11:20
用户436231 2012-12-6 23:28
用户593939 2012-11-4 21:52
用户403664 2012-5-11 16:28
用户377235 2012-4-21 21:13
用户377235 2012-4-8 21:27
顶你!哈哈
用户1561903 2012-4-1 16:43
用户377235 2012-3-31 21:18
楼主的知识很渊博,浅显易懂的解决了我的问题。太感谢了。
用户416526 2012-3-31 18:04
赞一个!
用户377235 2012-3-31 18:00