好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

集成开发环境CCS.ppt

93页
  • 卖家[上传人]:m****
  • 文档编号:576913646
  • 上传时间:2024-08-20
  • 文档格式:PPT
  • 文档大小:1.09MB
  • / 93 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第第5章章 集成开发环境(集成开发环境(CCS)) 内容提要:内容提要:nCCS概述概述nCCS的基本操作的基本操作: CCS的窗口、菜单和工具条,文件的编辑,的窗口、菜单和工具条,文件的编辑,CCS工程工程项目的建立和构建项目的建立和构建n工程项目的调试工程项目的调试: 程序的运行控制,断点和探测点的设置和使用,寄存程序的运行控制,断点和探测点的设置和使用,寄存器、存储器、变量的观察和修改,图形工具的使用、器、存储器、变量的观察和修改,图形工具的使用、数据输入与输出等数据输入与输出等 5.1 CCS概述概述n集成开发环境集成开发环境CCS概述概述nCCS软件的安装软件的安装 l针对针对TMS320系列系列DSPl工作于工作于Windows操作系统下,采用图形接口界面操作系统下,采用图形接口界面l提供有环境配置、源文件编辑、程序调试、跟踪和提供有环境配置、源文件编辑、程序调试、跟踪和分析等工具分析等工具 5.1.1 集成开发环境集成开发环境CCS概述概述 1. CCS的两种工作模式的两种工作模式l软件仿真器模式软件仿真器模式u可以脱离可以脱离DSP芯片,在芯片,在PC机上模拟机上模拟DSP的指令集和的指令集和工作机制,主要用于前期算法实现和调试工作机制,主要用于前期算法实现和调试l硬件编程模式硬件编程模式u可以实时运行在可以实时运行在DSP芯片上,与硬件开发板相结合芯片上,与硬件开发板相结合编程和调试应用程序编程和调试应用程序 lC55x集成代码产生工具集成代码产生工具u用来对用来对C语言、汇编语言或混合语言编程的语言、汇编语言或混合语言编程的DSP源源程序进行编译汇编,并链接成为可执行的程序进行编译汇编,并链接成为可执行的DSP程序程序u主要包括汇编器、链接器、主要包括汇编器、链接器、C/C++编译器和建库工编译器和建库工具等具等 l 集成开发环境集成开发环境u集编辑、编译、链接、软件仿真、硬件调试和实时集编辑、编译、链接、软件仿真、硬件调试和实时跟踪等功能于一体跟踪等功能于一体u包括编辑工具、工程管理工具和调试工具等包括编辑工具、工程管理工具和调试工具等 2. 2. 主要构成:主要构成: lDSP/BIOS实时内核插件及其应用程序接口实时内核插件及其应用程序接口API,,主要为实时信号处理应用而设计,包括主要为实时信号处理应用而设计,包括DSP/BIOS的配置工具、实时分析工具等的配置工具、实时分析工具等 l实时数据交换的实时数据交换的RTDX插件以及相应的程序接口插件以及相应的程序接口API,可对目标系统数据进行实时监视,实现,可对目标系统数据进行实时监视,实现DSP与其他应用程序的数据交换与其他应用程序的数据交换 l由由TI公司以外的第三方提供的各种应用模块插件公司以外的第三方提供的各种应用模块插件 3. CCS的主要功能的主要功能l具有集成可视化代码编辑界面,用户可通过其界面直具有集成可视化代码编辑界面,用户可通过其界面直接编写接编写C、汇编、、汇编、.cmd文件等文件等l含有集成代码生成工具,包括汇编器、优化含有集成代码生成工具,包括汇编器、优化C编译器、编译器、链接器等,将代码的编辑、编译、链接和调试等诸多链接器等,将代码的编辑、编译、链接和调试等诸多功能集成到一个软件环境中功能集成到一个软件环境中l高性能编辑器支持汇编文件的动态语法加亮显示,使高性能编辑器支持汇编文件的动态语法加亮显示,使用户很容易阅读代码,发现语法错误用户很容易阅读代码,发现语法错误 l工程项目管理工具可对用户程序实行项目管理。

      工程项目管理工具可对用户程序实行项目管理在生成目标程序和程序库的过程中,建立不同程在生成目标程序和程序库的过程中,建立不同程序的跟踪信息,通过跟踪信息对不同的程序进行序的跟踪信息,通过跟踪信息对不同的程序进行分类管理分类管理l基本调试工具具有装入执行代码、查看寄存器、基本调试工具具有装入执行代码、查看寄存器、存储器、反汇编、变量窗口等功能,并支持存储器、反汇编、变量窗口等功能,并支持C C源源代码级调试代码级调试 l断点工具,能在调试程序的过程中,完成硬件断断点工具,能在调试程序的过程中,完成硬件断点、软件断点和条件断点的设置点、软件断点和条件断点的设置 l探测点工具,可用于算法的仿真,数据的实时监探测点工具,可用于算法的仿真,数据的实时监视等视等l分析工具,包括模拟器和仿真器分析,可用于模分析工具,包括模拟器和仿真器分析,可用于模拟和监视硬件的功能、评价代码执行的时钟拟和监视硬件的功能、评价代码执行的时钟l数据的图形显示工具,可以将运算结果用图形显数据的图形显示工具,可以将运算结果用图形显示示,包括显示时域包括显示时域/频域波形、眼图、星座图、图频域波形、眼图、星座图、图像等,并能进行自动刷新像等,并能进行自动刷新 l提供提供GEL工具。

      利用工具利用GEL扩展语言,用户可以编写自扩展语言,用户可以编写自己的控制面板己的控制面板/菜单,设置菜单,设置GEL菜单选项,方便直观地菜单选项,方便直观地修改变量,配置参数等修改变量,配置参数等l支持多支持多DSP的调试的调试l支持支持RTDX技术,可在不中断目标系统运行的情况下,技术,可在不中断目标系统运行的情况下,实现实现DSP与其他应用程序的数据交换与其他应用程序的数据交换l提供提供DSP/BIOS工具,增强对代码的实时分析能力工具,增强对代码的实时分析能力 5.1.2 CCS软件的安装软件的安装l系统配置要求:系统配置要求:u操作系统:操作系统:Windows2000/XP/NTuPC::32MB以上以上RAM,,500MB以上的剩余硬盘空以上的剩余硬盘空间,间,Pentium133以上的微处理器,分辨率在以上的微处理器,分辨率在800×600以上的显示器以上的显示器☼ ☼ 现有的普通现有的普通PCPC基本都能满足运行基本都能满足运行CCSCCS的要的要求求 l 安装过程包括两个阶段:安装过程包括两个阶段:u安装CCS系统软件Ø 将CCS的安装光盘放入CD-ROM驱动器中,运行光盘根目录下的setup.exe,按照安装向导的提示将CCS安装到指定目录中(默认安装目录为C:\ti)Ø安装完毕后,桌面出现“CCS2(C5000)”和“Setup CCS2(C5000)”两个快捷方式图标u安装仿真器驱动程序安装仿真器驱动程序 根据不同的仿真器,按照说明书的提示进行安装 5.1.3 配置配置CCSlCCS是一个开放的开发环境,必须设置不同的系统配是一个开放的开发环境,必须设置不同的系统配置才能实现对不同环境的支持置才能实现对不同环境的支持l系统配置(系统配置(System Configuration)定义用户将要)定义用户将要使用的目标板(使用的目标板(Target Board)或者软件仿真器)或者软件仿真器((Simulator))l配置方法如下:配置方法如下: u双击桌面上的双击桌面上的“Setup CCS2((C5000))”快捷方式图快捷方式图标,屏幕上将出现标,屏幕上将出现“Import Configuration”对话框对话框 u在在” Available Configuration(可用配置)(可用配置)”中列出了中列出了包含的所有可用系统配置,如:包含的所有可用系统配置,如:C54xx、、C55xx等系列,等系列,有有Simulator、、Emulator,,DSK等平台供选择等平台供选择u选择合适的配置(在选择合适的配置(在“Filters”选项中进行设置可以选项中进行设置可以帮助更快地在可用配置找到所用的配置),点击帮助更快地在可用配置找到所用的配置),点击“Import”按钮,所选的系统配置就被添加进按钮,所选的系统配置就被添加进“System Configuration”中了中了u点击点击“Save and Quit”按钮,保存系统配置按钮,保存系统配置u退出退出“Setup CCS2((C5000))”,即可完成,即可完成CCS系统系统配置配置 5.2 CCS的基本操作的基本操作n 进入进入CCSCCS主界面主界面n 源文件的建立、打开、关闭与编辑源文件的建立、打开、关闭与编辑n 工程项目的创建、关闭和打开工程项目的创建、关闭和打开n 工程中文件的添加或删除工程中文件的添加或删除n 工程的构建(编译、链接)工程的构建(编译、链接) 5.2.1 进入进入CCS主界面主界面 1. 窗口窗口l工程窗口工程窗口l编辑窗口编辑窗口l反汇编窗口反汇编窗口l内存显示窗口内存显示窗口l寄存器显示窗口寄存器显示窗口l图形显示窗口图形显示窗口☼ ☼ CCSCCS的所有窗口都含有一个关联菜单的所有窗口都含有一个关联菜单 2. 主菜单主菜单文件管理,载入执行程序、符号及文件管理,载入执行程序、符号及数据、文件输入数据、文件输入/ /输出等输出等 文字及变量编辑。

      如剪贴、查找替文字及变量编辑如剪贴、查找替换、内存变量和寄存器编辑等换、内存变量和寄存器编辑等 工具条显示设置包括内存、寄存工具条显示设置包括内存、寄存器和图形显示等器和图形显示等 工程项目管理、工程项目编译工程项目管理、工程项目编译和构建工程项目等和构建工程项目等 设置断点、探测点,设置断点、探测点,完成单步执行、复完成单步执行、复位等位等性能菜单包括设置性能菜单包括设置时钟和性能断点等时钟和性能断点等利用通用扩展语言利用通用扩展语言扩展功能菜单扩展功能菜单 选项设置设置字体、选项设置设置字体、颜色、键盘属性、动颜色、键盘属性、动画速度、内存映射等画速度、内存映射等 工具菜单包括管脚工具菜单包括管脚连接、端口连接、命连接、端口连接、命令窗口、链接配置等令窗口、链接配置等DSP/BIOS核包括DSP/BIOS配置工具、实配置工具、实时分析工具、时分析工具、DSP/BIOS核、芯片支持库等核、芯片支持库等 窗口管理包括窗口排列、窗口管理包括窗口排列、窗口列表等窗口列表等 帮助菜单为用户提供帮助菜单为用户提供帮助信息帮助信息 3. 常用工具条常用工具条 (1) 标准工具条标准工具条创建文件按钮。

      用创建文件按钮用来创建新文件来创建新文件 打开文件按钮用来打开文件按钮用来打开已有的文件打开已有的文件 保存文件按钮用来保保存文件按钮用来保存当前窗口的文件存当前窗口的文件 剪切按钮用来剪切文本,剪切按钮用来剪切文本,将标记文本放入剪切板将标记文本放入剪切板 复制按钮用来复制文本,复制按钮用来复制文本,将标记文本放入剪切板将标记文本放入剪切板 粘贴按钮用来粘贴文本,将剪粘贴按钮用来粘贴文本,将剪切板中的文本粘贴在光标处切板中的文本粘贴在光标处 撤消按钮用于撤消最后的编辑活撤消按钮用于撤消最后的编辑活动 恢复按钮用于恢复最后撤消的恢复按钮用于恢复最后撤消的活动向下搜索按钮用来查找光标所在处向下搜索按钮用来查找光标所在处下一个要搜索的字符串下一个要搜索的字符串 向上搜索按钮用来查找光标所在处向上搜索按钮用来查找光标所在处前一个要搜索的字符串前一个要搜索的字符串 搜索文本段按钮将加亮显示的文本搜索文本段按钮将加亮显示的文本段作为搜索文本,单击该按钮,窗口段作为搜索文本,单击该按钮,窗口将移动到该段下一个出现的位置将移动到该段下一个出现的位置 搜索多个文件按钮在多个文件中搜搜索多个文件按钮在多个文件中搜索指定的文本段。

      索指定的文本段 打印文件按钮用来打印当前窗口源打印文件按钮用来打印当前窗口源文件帮助按钮为用户提供上下文相关的帮助按钮为用户提供上下文相关的帮助 ((2)编辑工具条)编辑工具条把光标放置在某括号前,按此按把光标放置在某括号前,按此按钮即查找自光标所在处开始的括钮即查找自光标所在处开始的括号,并标记括号对中的文本号,并标记括号对中的文本 查找下一个开括号对,标记与之对查找下一个开括号对,标记与之对应的括号对内的文本应的括号对内的文本 查找匹配括号按钮查找匹配括号按钮查找下一个开括号按钮查找下一个开括号按钮 把选中的文本块左移一个制表站把选中的文本块左移一个制表站 把选中的文本块右移一个制表把选中的文本块右移一个制表格 设置或取消书签设置或取消书签 查找下一个书签查找下一个书签 查找上一个书签查找上一个书签 编辑书签编辑书签 ((3)工程项目工具条)工程项目工具条编译当前的源文件,生成目标编译当前的源文件,生成目标((. .objobj)文件)文件对上次对上次 操作以后改变了的操作以后改变了的文件进行编译,并链接生成输出文件进行编译,并链接生成输出((.out.out)文件)文件重新编译并链接当前工程项目中重新编译并链接当前工程项目中的所有文件,生成输出(的所有文件,生成输出(.out.out))文件文件在编辑窗口中的源文件或反汇编在编辑窗口中的源文件或反汇编指令中设置断点指令中设置断点删除全部断点删除全部断点设置探测点设置探测点删除全部探测点删除全部探测点 ((4)调试工具条)调试工具条单步运行,遇到函数或子程序,则单步运行,遇到函数或子程序,则进入函数内部或子程序。

      进入函数内部或子程序汇编语言汇编语言调试调试 单步运行,遇到函数或子程序时全单步运行,遇到函数或子程序时全速完成,不进入函数内部或子程序速完成,不进入函数内部或子程序汇编语言调试汇编语言调试 单步跳出,从当前子程序的位置全单步跳出,从当前子程序的位置全速执行后续子程序,返回到调用该速执行后续子程序,返回到调用该子程序的指令子程序的指令单步运行,遇到函数或子程序,单步运行,遇到函数或子程序,则进入函数内部或子程序则进入函数内部或子程序C C语言语言调试调试 单步运行,遇到函数或子程序时全单步运行,遇到函数或子程序时全速完成,不进入函数内部或子程序速完成,不进入函数内部或子程序C C语言调试语言调试 程序从上次运行停止处,全程序从上次运行停止处,全速运行到当前光标处速运行到当前光标处 从当前从当前PCPC位置开始执行程序,位置开始执行程序,直到遇到断点后停止直到遇到断点后停止 暂停正在执行的程序暂停正在执行的程序 在执行前先设置好各断点,在执行前先设置好各断点,每按一次该按钮,就会从每按一次该按钮,就会从当前程序位置执行到下一当前程序位置执行到下一个断点处连续按该按钮个断点处连续按该按钮可以实现动画运行。

      可以实现动画运行用来显示寄存器观察窗口,用来显示寄存器观察窗口,观察和修改寄存器观察和修改寄存器 用来打开存储器窗口选项用来打开存储器窗口选项, ,显示存储器观察窗口显示存储器观察窗口 用来打开调用堆栈观察窗用来打开调用堆栈观察窗口 用来打开反汇编窗口用来打开反汇编窗口 用来打开快速观察窗口,用来打开快速观察窗口,查看和修改变量查看和修改变量 用来打开观察窗口用来打开观察窗口,监视局监视局部变量和全局变量的值部变量和全局变量的值 5.2.2 源文件的建立、打开、关闭与编辑源文件的建立、打开、关闭与编辑图5.7 工程文件夹 以音频增益处理程序(以音频增益处理程序(volume)为例,在)为例,在CCS环境下讲述源程序文件的建立和编辑,环境下讲述源程序文件的建立和编辑,工程文件的建立,工程项目的编译、链接,工程文件的建立,工程项目的编译、链接,程序的运行控制、变量观察等程序的运行控制、变量观察等CCS的基本使的基本使用方法 例例5­1,建立,建立3个新的文本格式源程序文件个新的文本格式源程序文件n文件内容如下:文件内容如下:(1)C语言源程序volume.c: //----------------------相关头文件------------------------------------//#include "volume.h"//-----------------------工作变量定义----------------------------------//int inp_buffer[BUF_SIZE];// 输入缓冲区int out_buffer[BUF_SIZE];// 输出缓// BUF_SIZE的定义见volume.h int *input;int *output;int volume = 2;struct PARMS str = {2934, 9432, 213, 9432, &str}; //-------------------------调用子程序规则--------------------------------//int read_signals(int *input);int write_buffer(int *input,int *output,int count);int output_signals(int *output);//----------------------------主程序------------------------------------//main(){ int num = BUF_SIZE;int i;// ======初始化======i=0;input=inp_buffer;output=out_buffer;// ======无限循环====== while ( TRUE ){ read_signals(inp_buffer);// 加软件断点和探针write_buffer(inp_buffer, out_buffer, num);output_signals(output);i++; }}} //---------------------------------子程序---------------------------------//// 读取输入信号int read_signals(int *input){// 在此读取采集数据信号放到输入缓冲区input[]return(TRUE);}// 将数据进行处理后搬移到输出缓冲区int write_buffer(int *input,int *output,int count){int i;for ( i=0;i DARAM .vectors: {} > VECT .trcinit: {} > DARAM .gblinit: {} > DARAM frt: {} > DARAM .cinit: {} > DARAM .pinit: {} > DARAM . .sysinit: {} > DARAM .bss: {} > DARAM2 .far: {} > DARAM2 .const: {} > DARAM2 .switch: {} > DARAM2 .sysmem: {} > DARAM2 .cio: {} > DARAM2 .MEM$obj: {} > DARAM2 .sysheap: {} > DARAM2 .sysstack: {} > DARAM2 .stack: {} > DARAM2 } 5.2.3 工程项目的创建、关闭和打开工程项目的创建、关闭和打开u选择菜单选择菜单“Project ­­> New”,打开,打开“Project Creation”对话框对话框u在在“Project”填入工程名,在填入工程名,在“Location”中会自动中会自动补全存储路径,也可以自由选择存储路径补全存储路径,也可以自由选择存储路径u 在在“Project Type”中选择中选择“Executable((.out))”,,这表示生成一个这表示生成一个.out类型的可执行的文件类型的可执行的文件u在在“Target”中填入平台名称中填入平台名称1.1.创建一个新的工程项目创建一个新的工程项目 例例5­2,创建一个名为,创建一个名为“volume.pjt”的的工程文件。

      工程文件 2.工程项目的关闭工程项目的关闭选择菜单选择菜单“Project ­­> Close”即可关闭当前工程项目即可关闭当前工程项目3.工程项目的打开工程项目的打开l选择项目菜单选择项目菜单“Project”中的中的“Open”命令,弹出命令,弹出“Project Open”对话框对话框l在对话框中,选择要打开的工程项目文件,单击在对话框中,选择要打开的工程项目文件,单击“打开打开”按钮 ☼ ☼ 打开另一个工程项目后,以前打开的工程项目将打开另一个工程项目后,以前打开的工程项目将自动关闭自动关闭 5.2.4工程中文件的添加或删除工程中文件的添加或删除1.向工程中添加文件向工程中添加文件l 单击单击“Project ­­>Add File to Projects”,选择添,选择添加的文件加的文件l 或或在项目管理器(在项目管理器(Project View)中单击右键或将)中单击右键或将文件拖进项目管理器的窗口中来完成添加文件任务文件拖进项目管理器的窗口中来完成添加文件任务2.从工程中删除文件从工程中删除文件 在工程项目清单中,用右键单击所要删除的文件,弹出在工程项目清单中,用右键单击所要删除的文件,弹出关联菜单,选择关联菜单,选择“Remove from Project”选项即可删除该文选项即可删除该文件件 5.2.5工程的构建(编译、链接)工程的构建(编译、链接)l工程项目的构建工程项目的构建u对工程有关文件进行编译链接,生成可执行文件对工程有关文件进行编译链接,生成可执行文件lCCS的构建工程项目提供了的构建工程项目提供了4种操作,即种操作,即u编译文件编译文件u增加性构建增加性构建u全部重新构建全部重新构建u停止构建。

      停止构建 1.编译文件编译文件l编译文件仅完成对当前源文件的编译,编译文件仅完成对当前源文件的编译,不进行链接不进行链接具体操作如下:操作如下: u在工程项目清单中,右击要编译的源文件名,选择关在工程项目清单中,右击要编译的源文件名,选择关联菜单中的联菜单中的“Open”选项,打开要编译的源文件也选项,打开要编译的源文件也可双击文件名,打开源文件可双击文件名,打开源文件u在菜单在菜单“Project”中选择中选择“Compile File”,或单击项,或单击项目工具条中的编译文件按钮,对打开的文件进行编译目工具条中的编译文件按钮,对打开的文件进行编译 l在对当前文件进行编译的过程中,工作界面的底部出现在对当前文件进行编译的过程中,工作界面的底部出现“Output”窗口,显示编译信息窗口,显示编译信息 2.增加性构建增加性构建l仅对修改过的源文件进行编译,先前编译过、没有修仅对修改过的源文件进行编译,先前编译过、没有修改的文件不再进行编译改的文件不再进行编译l以下方法都可以完成工程项目的增加性构建以下方法都可以完成工程项目的增加性构建 u选择项目菜单选择项目菜单“Project”中的中的“Build”命令命令 u单击项目工具条中的增加性构建按钮单击项目工具条中的增加性构建按钮u在工程项目窗口中,右击工程项目文件,选择关联在工程项目窗口中,右击工程项目文件,选择关联菜单中的菜单中的“Build”选项选项 3.全部重新构建全部重新构建l对当前工程项目中的所有文件进行重新编译、重新链对当前工程项目中的所有文件进行重新编译、重新链接,形成输出文件接,形成输出文件l以下方法都可以完成工程项目的增加性构建以下方法都可以完成工程项目的增加性构建u选择选择“Project”菜单中的菜单中的“Rebuild All”u单击项目工具条中的全部重新构建按钮单击项目工具条中的全部重新构建按钮 4.停止构建停止构建l停止当前的构建进程停止当前的构建进程u选择选择“Project”菜单中的菜单中的“Stop Build”u或单击项目工具条中的停止构建按钮或单击项目工具条中的停止构建按钮 5.工程项目选项工程项目选项l工程项目选项的类型:工程项目选项的类型:uC编译器选项编译器选项u汇编器选项汇编器选项u链接器选项链接器选项l工程项目选项类型的设定工程项目选项类型的设定u可通过工程项目选项对话框来设定可通过工程项目选项对话框来设定u也可以在工程项目命令文件中设定,参考第也可以在工程项目命令文件中设定,参考第4章有章有关内容关内容 例例5­4,构建,构建“volume.pjt”工程工程l打开打开“volume.pjt”,点击项目工具条中的按钮,即,点击项目工具条中的按钮,即可完成该工程的全部重新构建可完成该工程的全部重新构建l生成的可执行代码文件为生成的可执行代码文件为“volume.out”,放在目录,放在目录e::\DSP_C55exam\volume\debug下下 5.3 工程项目的调试工程项目的调试l当完成工程项目构建,生成目标文件后,就可以进行当完成工程项目构建,生成目标文件后,就可以进行程序的调试程序的调试l一般的调试步骤为:一般的调试步骤为:u装入构建好的目标文件装入构建好的目标文件u设置程序断点、探测点和评价点设置程序断点、探测点和评价点u执行程序执行程序u程序停留在断点处,查看寄存器和内存单元的数据,程序停留在断点处,查看寄存器和内存单元的数据,并对中间数据进行(或输出)分析并对中间数据进行(或输出)分析 5.3.1 程序的运行控制程序的运行控制l程序运行控制程序运行控制u在调试程序过程中的复位、执行、单步执行等操作在调试程序过程中的复位、执行、单步执行等操作lCCS开发环境提供了多种调试程序的运行操作。

      开发环境提供了多种调试程序的运行操作u使用调试工具条使用调试工具条u或或使用调试菜单使用调试菜单“Debug”中的相应命令中的相应命令 1.加载程序加载程序l装载程序装载程序u在进行程序运行之前,需将在进行程序运行之前,需将.out目标文件装入目标目标文件装入目标系统系统u选择菜单选择菜单“File­>Load Program”,弹出,弹出“Load Program”对话框中,选择所要装载的对话框中,选择所要装载的.out文件,文件,即可将程序加载到目标系统即可将程序加载到目标系统l重新装载程序重新装载程序u在调试程序的过程中,经常会出现程序被破坏的情在调试程序的过程中,经常会出现程序被破坏的情况可选择况可选择“File”菜单中的菜单中的“Reload Program”命令,向目标系统重新装载文件命令,向目标系统重新装载文件 2.复位目标处理器复位目标处理器lCPU复位命令复位命令u在在“Debug”调试菜单中,选择调试菜单中,选择“Reset CPU”u该命令是将目标处理器该命令是将目标处理器CPU恢复到上电初始状态,恢复到上电初始状态,初始化所有寄存器的内容,并停止当前所执行的用初始化所有寄存器的内容,并停止当前所执行的用户程序户程序l重新开始命令重新开始命令u在在“Debug”调试菜单中,选择调试菜单中,选择“Restart”u该命令是将该命令是将CCS的程序指针的程序指针PC恢复到用户程序的恢复到用户程序的入口地址,但不能开始执行程序入口地址,但不能开始执行程序 l进入主程序命令进入主程序命令u在在“Debug”调试菜单中,选择调试菜单中,选择“Go Main”u该命令用于调试该命令用于调试C语言用户程序语言用户程序Ø其功能是将一个临时断点设置在用户程序关键字其功能是将一个临时断点设置在用户程序关键字“main”处,并从此处开始执行用户程序,直到处,并从此处开始执行用户程序,直到遇到用户设置的断点或执行遇到用户设置的断点或执行“Halt”命令时,停命令时,停止执行程序,撤销临时断点止执行程序,撤销临时断点Ø当执行的用户程序停止在当执行的用户程序停止在“main()()”处时,相处时,相关的一些源文件被自动装载关的一些源文件被自动装载 3.单步运行单步运行((1)单步进入(快捷键)单步进入(快捷键F8))l若源程序采用汇编指令,则该命令完成一条汇编指若源程序采用汇编指令,则该命令完成一条汇编指令的执行令的执行l若采用的是若采用的是C程序,则这一命令将执行一条程序,则这一命令将执行一条C指令,指令,可进入语句内部(如子程序或软件中断等)调试可进入语句内部(如子程序或软件中断等)调试 ((2)单步执行(快捷键)单步执行(快捷键F10))l在菜单在菜单“Debug”中,选择中,选择“Step Over”命令或单击命令或单击调试工具条上的按钮单步执行操作调试工具条上的按钮单步执行操作l该操作是每发出一条操作命令,执行一条或一段程序该操作是每发出一条操作命令,执行一条或一段程序u对于一般程序,该命令仅执行一条程序指令对于一般程序,该命令仅执行一条程序指令(一条一条汇编指令或汇编指令或C语句语句)u若所执行的是一条程序调用语句,则该命令是将若所执行的是一条程序调用语句,则该命令是将所调用的程序作为一条指令来完成,即把调用指令所调用的程序作为一条指令来完成,即把调用指令和调用程序作为一条指令来执行和调用程序作为一条指令来执行 ((3)单步跳出(快捷键)单步跳出(快捷键Shift+F7))l执行菜单执行菜单“Debug”中的中的“Step Out”命令或单击调命令或单击调试工具条上的按钮,即可完成单步跳出操作试工具条上的按钮,即可完成单步跳出操作l此命令可完成从子程序中跳出,即从当前子程序的此命令可完成从子程序中跳出,即从当前子程序的位置开始,自动执行后续的程序,直到返回到调用位置开始,自动执行后续的程序,直到返回到调用该子程序的指令为止该子程序的指令为止 ((4)执行到当前光标处(快捷键)执行到当前光标处(快捷键Ctrl+F10))l可以通过选择菜单可以通过选择菜单“Debug”中的中的“Run to Cursor”命命令或单击调试工具条中的按钮来完成操作令或单击调试工具条中的按钮来完成操作l在程序的调试过程中,此项操作可以提供方便的调试在程序的调试过程中,此项操作可以提供方便的调试方法,只要在反汇编窗口中设置一个光标方法,只要在反汇编窗口中设置一个光标(单击设定单击设定指令的所在行指令的所在行),就可以使程序从当前位置开始,一,就可以使程序从当前位置开始,一直执行到光标所在处为止直执行到光标所在处为止 4. 多步执行操作多步执行操作l选择调试菜单选择调试菜单“Debug”中的中的“Multiple Operations”命令,弹出命令,弹出“Multiple Operation”对话框对话框l 在对话框的下拉菜单中选择相应的单步操作类型,在对话框的下拉菜单中选择相应的单步操作类型,在对话框的在对话框的“Count”选项中设定相应的操作次数,选项中设定相应的操作次数,单击单击“OK”按钮即可完成多步操作按钮即可完成多步操作 5.实时运行实时运行l执行程序执行程序u选择调试菜单选择调试菜单“Debug”中的中的“Run”命令,或单命令,或单击调试工具条上的运行程序按钮,程序运行直到击调试工具条上的运行程序按钮,程序运行直到遇见断点为止遇见断点为止l暂停执行暂停执行u在调试菜单在调试菜单“Debug”中,选择中,选择“Halt”命令,命令,或单击调试工具条上的暂停程序按钮,暂停程序或单击调试工具条上的暂停程序按钮,暂停程序的运行的运行 l动画执行动画执行u使用调试菜单使用调试菜单“Debug”中的中的 “Animate”命令,命令,或单击调试工具条上的动画执行按钮,可以实或单击调试工具条上的动画执行按钮,可以实现动画操作现动画操作 u在执行前先设置好各断点,然后,每执行一次在执行前先设置好各断点,然后,每执行一次操作命令,就会从当前程序位置执行到下一个操作命令,就会从当前程序位置执行到下一个断点处断点处u动画执行速度可通过设置选项设定动画执行速度可通过设置选项设定 l自由运行自由运行u在调试菜单在调试菜单“Debug”中的中的“Run Free”命令,命令,实现用户程序的自由运行实现用户程序的自由运行u这是一种全速执行用户程序的操作。

      从当前的这是一种全速执行用户程序的操作从当前的PC位置开始,忽略所有的断点、探测点和评价位置开始,忽略所有的断点、探测点和评价点,全速执行用户程序点,全速执行用户程序u若要停止自由运行,可使用若要停止自由运行,可使用“Halt(暂停暂停)”命命令或对目标处理器进行硬件复位令或对目标处理器进行硬件复位 5.3.2 断点断点l断点的作用断点的作用u暂停程序的运行,以便观察程序的状态,检查暂停程序的运行,以便观察程序的状态,检查或修正变量,查看调用的堆栈、存储器和寄存或修正变量,查看调用的堆栈、存储器和寄存器的内容等器的内容等l断点可以设置在编辑窗口中源代码行上,也可以断点可以设置在编辑窗口中源代码行上,也可以设置在反汇编窗口中的反汇编指令上设置在反汇编窗口中的反汇编指令上l设置断点时应当避免以下两种情形:设置断点时应当避免以下两种情形: u将断点设置在属于分支或调用的语句上将断点设置在属于分支或调用的语句上u将断点设置在块重复操作的倒数第一或第二条将断点设置在块重复操作的倒数第一或第二条语句上语句上 1.断点的设置方法断点的设置方法l在反汇编窗口或含有在反汇编窗口或含有C源代码的编辑窗口中,将源代码的编辑窗口中,将光标移到需要设置断点的语句行上,单击项目工光标移到需要设置断点的语句行上,单击项目工具条上的设置断点按钮,则在该行语句设置一个具条上的设置断点按钮,则在该行语句设置一个断点断点 l或:通过菜单或:通过菜单“Debug”中中“Breakpoints”命令,命令,弹出弹出“Breakpoints /Probe Points”对话框。

      然对话框然后在对话框中选择断点类型、位置后在对话框中选择断点类型、位置 2.断点的删除断点的删除l单击项目工具条上的删除断点按钮,可以删单击项目工具条上的删除断点按钮,可以删除全部断点除全部断点l如果只想删除部分断点,可以打开如果只想删除部分断点,可以打开“Breakpoints /Probe Points”对话框,在对话框,在断点窗口的清单中,选择要删除的断点,单断点窗口的清单中,选择要删除的断点,单击击“delete”按钮,可以删除该断点按钮,可以删除该断点 3. 断点的允许和禁止断点的允许和禁止 l禁止断点禁止断点 u打开打开“Breakpoints /Probe Points”对话框在对话框在断点窗口的清单中,选择要删除的断点,单击断点窗口的清单中,选择要删除的断点,单击该断点的标记框,清除该断点的标记框,清除“ ”号标记,使该断号标记,使该断点处于禁止状态可以删除部分断点点处于禁止状态可以删除部分断点l允许断点允许断点 u打开打开“Breakpoints /Probe Points”对话框,在对话框,在断点窗口的清单中,选择要允许的断点,单击断点窗口的清单中,选择要允许的断点,单击该断点的标记框,设置该断点的标记框,设置“ ”号标记,使该断号标记,使该断点处于允许状态点处于允许状态 5.3.3 反汇编窗口的使用反汇编窗口的使用 反汇编窗口主要用来显示反汇编反汇编窗口主要用来显示反汇编后的指令和调试所需的符号信息,包括后的指令和调试所需的符号信息,包括反汇编指令、指令所存放的地址和相应反汇编指令、指令所存放的地址和相应的操作码(机器码)的操作码(机器码) 1. 打开反汇编窗口打开反汇编窗口l当程序装入目标处理器或仿真器后,当程序装入目标处理器或仿真器后,CCS会自会自动打开反汇编窗口动打开反汇编窗口l用户可以使用用户可以使用“View”菜单中的菜单中的“Dis­Assembly”选项,或调试工具条中的观察反汇选项,或调试工具条中的观察反汇编按钮,打开多个反汇编窗口编按钮,打开多个反汇编窗口 图图5­14 反汇编窗口反汇编窗口 2.修改程序当前地址修改程序当前地址 l在调试程序时,经常需要修改执行程序的当前地在调试程序时,经常需要修改执行程序的当前地址,可在反汇编窗口中完成址,可在反汇编窗口中完成l在反汇编窗口中,把光标移至某程序行,选择菜在反汇编窗口中,把光标移至某程序行,选择菜单单“Debug”的的“Set PC to Cursor”选项,即可选项,即可把执行程序的当前地址设置在光标处把执行程序的当前地址设置在光标处 3.观看观看C源程序与汇编程序的混合代码源程序与汇编程序的混合代码l利用反汇编窗口可以观看利用反汇编窗口可以观看C源程序和汇编程序的源程序和汇编程序的混合代码。

      混合代码 l选择选择“View­>Mixed Source/ASM”,则会同时,则会同时显示汇编语言语句和显示汇编语言语句和C语言语句,如图语言语句,如图5­15所示 图图5­15 “Mixed Source/ASM”窗口窗口单击某个指令或寄存器,再按单击某个指令或寄存器,再按“F1”键,键,将出现关于这个指令和寄存器的详细解释将出现关于这个指令和寄存器的详细解释这是一个学习汇编语言的好方法这是一个学习汇编语言的好方法 5.3.4 存储器窗口的使用存储器窗口的使用 存储器窗口可以直接显示存储器的内存储器窗口可以直接显示存储器的内容 在调试程序的过程中,可直接观察存在调试程序的过程中,可直接观察存储器的内容来判断程序的正确性储器的内容来判断程序的正确性 1.观察存储器的内容观察存储器的内容((1))点击调试工具条中的点击调试工具条中的观察存储器按钮,或选择观察存储器按钮,或选择“View”菜单中的菜单中的“Memory”选项,可以打选项,可以打开开“Memory Window Options”对话框图图5­16 存储器选项窗口存储器选项窗口 ((2)输入各选项参量,确定窗口的特征。

      输入各选项参量,确定窗口的特征uAddress:地址uQ­Value::Q值表示所观察数据的小数点位置,其值可值表示所观察数据的小数点位置,其值可选择选择0~31之间的整数之间的整数uFormat:数据格式,从下拉菜单中选择数据格式,从下拉菜单中选择 uUse IEEE Float:数据以:数据以IEEE浮点格式显示浮点格式显示 uPage:页面选择显示的存储器空间类型可选择的类:页面选择显示的存储器空间类型可选择的类型有型有Program(程序程序)、、Data(数据数据)和和I/OuEnable Reference Buffer:使能参考缓冲器:使能参考缓冲器 uStart Address:表示所要观察的存储器起始地址,注:表示所要观察的存储器起始地址,注意必须以意必须以0x开头 uEnd Address:存储器结束地址存储器结束地址 uUpdate Refrence Buffer Automat:自动更新参考:自动更新参考缓冲器 ((3)单击)单击“OK”按钮,出现存储器窗口按钮,出现存储器窗口图图5-17 5-17 存储器窗口存储器窗口 2.编辑存储器编辑存储器((1)快速编辑)快速编辑l打开存储器窗口,找到要编辑的存储器位置。

      打开存储器窗口,找到要编辑的存储器位置l左键双击要编辑的存储器所在行,弹出左键双击要编辑的存储器所在行,弹出“Edit Memory”对话框 l在编辑对话框的在编辑对话框的“Data”栏中,输入要编辑的数据栏中,输入要编辑的数据 l点击点击“Done”按钮,完成存储器的编辑按钮,完成存储器的编辑2)采用命令菜单编辑)采用命令菜单编辑 l打开打开“Edit”菜单,选择菜单,选择“Memory”中的中的“Edit”命命令,弹出令,弹出“Edit Memory”对话框l在在“Address”和和“Data”栏中,输入地址和数栏中,输入地址和数l点击点击“Done”按钮,完成存储器的编辑按钮,完成存储器的编辑 3.存储器块操作存储器块操作l拷贝数据块,用来将存储器中某一区域的数据块复制到另拷贝数据块,用来将存储器中某一区域的数据块复制到另一个区域一个区域 在主菜单在主菜单“Edit”中,选择中,选择“Memory”中的中的“Copy”命令,打开命令,打开“Setup for Copying”对话框输入源数据对话框输入源数据块的首地址、数据长度和存储空间类型,输入目标数据块的首地址、数据长度和存储空间类型,输入目标数据块首地址和存储空间类型,点击块首地址和存储空间类型,点击“OK”按钮,即完成数按钮,即完成数据块拷贝。

      据块拷贝l填充数据块,用特定的数据填充存储器某一段区域填充数据块,用特定的数据填充存储器某一段区域u在主菜单在主菜单“Edit”中,选择中,选择“Memory”中的中的“Fill”命令u打开打开“Setup Fill Memory”对话框,输入数据块首地对话框,输入数据块首地址、数据长度、填充数据内容和存储空间类址、数据长度、填充数据内容和存储空间类u点击点击“OK”按钮,完成数据块填充按钮,完成数据块填充 5.3.5 寄存器窗口的使用寄存器窗口的使用l寄存器窗口的作用寄存器窗口的作用u用来观察目标处理器的用来观察目标处理器的CPU寄存器和外设寄寄存器和外设寄存器uCPU寄存器的内容还可以通过寄存器编辑对寄存器的内容还可以通过寄存器编辑对话框进行编辑修改话框进行编辑修改 1.启动寄存器窗口启动寄存器窗口l点击调试工具条中点击调试工具条中的观察寄存器按钮,的观察寄存器按钮,或选择菜单或选择菜单“View”中的中的“Registers ­­> CPU Registers”选项,可以打开寄选项,可以打开寄存器窗口存器窗口 2.编辑寄存器编辑寄存器l有三种方法可以打开编辑寄存器对话框有三种方法可以打开编辑寄存器对话框u在打开的寄存器窗口中,双击某寄存器名即可打开在打开的寄存器窗口中,双击某寄存器名即可打开编辑对话框。

      编辑对话框u选择选择“Edit”菜单中的菜单中的“Edit Register”命令命令,可可打开编辑对话框打开编辑对话框u从寄存器窗口中,右击窗口打开关联菜单,选择从寄存器窗口中,右击窗口打开关联菜单,选择“Edit Register”命令,可打开编辑对话框命令,可打开编辑对话框 5.3.6 观察窗口的使用观察窗口的使用l观察窗口观察窗口(Watch Window)用于实时地观察和修改局用于实时地观察和修改局部变量和全局变量的值部变量和全局变量的值 1.打开观察窗口打开观察窗口l使用调试工具条中的打开观察窗口按钮,或采用使用调试工具条中的打开观察窗口按钮,或采用“View”菜单中的菜单中的“Watch Window”命令都可以打开命令都可以打开观察窗口观察窗口l在在“Watch Locals”标签中,调试器自动显示局部变量标签中,调试器自动显示局部变量的名字、大小、类型的名字、大小、类型局部变量的值可以被改变,但局部变量的值可以被改变,但是名字不能改变是名字不能改变l在在“Watch”标签中,调试器显示局部和全局变量以及标签中,调试器显示局部和全局变量以及指定表达式的名字、大小、类型。

      指定表达式的名字、大小、类型在在“Watch Locals”窗口中不能添加或删除变量,而添加变量或表达式需窗口中不能添加或删除变量,而添加变量或表达式需要在要在“Watch”窗口中进行窗口中进行 l将光标移到所选定的观察窗口中,单击将光标移到所选定的观察窗口中,单击图标,或按键盘上的图标,或按键盘上的“Insert”键,在键,在出现的框内输入变量符号,即把该变量出现的框内输入变量符号,即把该变量加入到观察窗口中加入到观察窗口中2.在观察窗口中加入观察变量在观察窗口中加入观察变量 3.删除观察变量删除观察变量l有两种方法可以从观察窗口中删去某变量:有两种方法可以从观察窗口中删去某变量: u在当前观察窗口中,双击某变量按键盘中的在当前观察窗口中,双击某变量按键盘中的“Delete”键,从窗口列表中删除此变量键,从窗口列表中删除此变量 u选中某变量后,右键单击该变量,打开关联菜选中某变量后,右键单击该变量,打开关联菜单单,选择选择“Delete Selected Items”选项选项,即可即可删除该变量删除该变量 4.编辑变量编辑变量l有两种方法可以完成变量的编辑:有两种方法可以完成变量的编辑:u在观察窗口中找到所要编辑的变量;左键双击要在观察窗口中找到所要编辑的变量;左键双击要编辑的变量,在编辑的变量,在“Value”栏中,输入要编辑的栏中,输入要编辑的数据。

      数据u选择菜单选择菜单“Edit”中的编辑变量命令中的编辑变量命令“Edit Variable”,弹出编辑变量对话框在对话框中,弹出编辑变量对话框在对话框中输入信息:要编辑的变量名和新的变量值点击输入信息:要编辑的变量名和新的变量值点击“OK”按钮完成编辑按钮完成编辑 5.3.7 图形显示工具图形显示工具lCCS开发环境提供了多种强大功能的图形显示工具,开发环境提供了多种强大功能的图形显示工具,可以将内存中的数据以各种图形的方式显示给用户,可以将内存中的数据以各种图形的方式显示给用户,帮助用户直观了解数据的意义帮助用户直观了解数据的意义l图形工具在数字信号处理中非常有用,可以从总体上图形工具在数字信号处理中非常有用,可以从总体上分析处理前和处理后的数据,以观察程序运行的效果分析处理前和处理后的数据,以观察程序运行的效果 l在菜单在菜单“View”中选择中选择“Graph”选项,即可进入图形选项,即可进入图形显示功能子菜单显示功能子菜单 表表5­1 图形显示功能图形显示功能 5.3.8 探测点探测点l探测点是一种设置在源文件某条语句上的特殊断点,探测点是一种设置在源文件某条语句上的特殊断点,主要用来与一个外部文件的读主要用来与一个外部文件的读/写相关联。

      写相关联l当用户程序运行到探测点时,自动地从与该探测点连当用户程序运行到探测点时,自动地从与该探测点连接的外部文件中读入数据或将存储器内容输出给外部接的外部文件中读入数据或将存储器内容输出给外部文件完成数据的传输后,自动恢复程序的运行完成数据的传输后,自动恢复程序的运行l探测点在算法开发过程中是一个有用的工具,可用来探测点在算法开发过程中是一个有用的工具,可用来与与PC主机进行数据通信主机进行数据通信 1.探测点的设置探测点的设置l探测点可以在编辑窗口的源文件中设置,也可以探测点可以在编辑窗口的源文件中设置,也可以在反汇编窗口的反汇编指令中设置在反汇编窗口的反汇编指令中设置l在编辑窗口或反汇编窗口中,将光标移到主函数在编辑窗口或反汇编窗口中,将光标移到主函数要加入探测点的行上,单击项目工具条上的设置要加入探测点的行上,单击项目工具条上的设置探测点按钮探测点按钮 ,即可完成探测点的设置即可完成探测点的设置 l也可以使用设置探测点对话框完成探测点的设置也可以使用设置探测点对话框完成探测点的设置 2.探测点的删除探测点的删除l单击项目工具条上的按钮,可删除所有探测点单击项目工具条上的按钮,可删除所有探测点。

      l打开设置探测点对话框从打开设置探测点对话框从“Probe Point”窗口列窗口列表中选择要删除的探测点,单击表中选择要删除的探测点,单击“Delete”按钮,按钮,即可删除此探测点若单击即可删除此探测点若单击“Delete All”按钮,按钮,可删除所有探测点可删除所有探测点 3.探测点的允许和禁止探测点的允许和禁止l禁止探测点禁止探测点 l允许探测点允许探测点l禁止所有探测点禁止所有探测点l允许所有探测点允许所有探测点打开设置探测点对话框在探测点打开设置探测点对话框在探测点窗口的清单中,窗口的清单中,选择要禁止的探测选择要禁止的探测点点,单击标记框,清除,单击标记框,清除““ ””号标号标记,使该探测点处于禁止状态记,使该探测点处于禁止状态打开设置探测点对话框,在探测点打开设置探测点对话框,在探测点窗口的清单中,窗口的清单中,选择要允许的探测选择要允许的探测点点,单击标记框,设置,单击标记框,设置““ ””号标号标记,使该探测点处于允许状态记,使该探测点处于允许状态打开设置探测点对话框,打开设置探测点对话框,单击单击““Disable AllDisable All””按钮按钮,使探测点,使探测点清单中的所有探测点处于禁止状态。

      清单中的所有探测点处于禁止状态打开设置探测点对话框,打开设置探测点对话框,单击单击““Enable AllEnable All””按钮,按钮,使清单中使清单中的所有探测点处于允许状态的所有探测点处于允许状态 例例5­5,探测点的使用探测点的使用l((1)选择)选择“File ­ >Load Program”,选择路径,选择路径e::\DSP_C55exam\volume\debug,双击,双击“volume.out”,加,加载程序l((2)在项目管理器中双击)在项目管理器中双击“volume.c”,打开源程序文,打开源程序文件l((3)将光标置于语句)将光标置于语句“read_signals(inp_buffer);;”上read_signals(inp_buffer)是一个负责从主机文件中读是一个负责从主机文件中读取数据的重要函数,也是方便加入探针点的位置取数据的重要函数,也是方便加入探针点的位置 l((4)单击工具栏上的)单击工具栏上的“Taggle Probe Point”图标,探针图标,探针点被插入到该语句前(一个蓝色的标记点被插入到该语句前(一个蓝色的标记图图5­21 设置探针点设置探针点 l((5)在菜单)在菜单“File”中选择中选择“FileI/O”,弹出,弹出“FileI/O”对话框。

      对话框 在在““File InputFile Input”” 中点击中点击““Add Add FileFile””选择路径为选择路径为““e:\DSP_C55exam\volume\e:\DSP_C55exam\volume\””的的文件文件““sine.datsine.dat””作为从主机上作为从主机上输入数据的文件输入数据的文件在在““AddressAddress””栏中填入栏中填入““inp_bufferinp_buffer””(表示输入地(表示输入地址,即数组址,即数组““inp_bufferinp_buffer””的的首址),首址),““LengthLength””中填入中填入100100(即(即 BUFSIZE0x64BUFSIZE0x64),点),点中中““Wrap AroundWrap Around”” l((6)点击)点击“Add Probe Point”,出现,出现“Break/Probe Points”对话框u在在“connect to”中选择中选择“sine2.dat”,单击,单击“Replace” u点击点击“OK”,使探针点连到了,使探针点连到了sine2.dat文件。

      此文件此时同时会出现时同时会出现sine2.dat的控制窗口的控制窗口 l((7)单击调试工具条上的运行程序按钮,运行程序单击调试工具条上的运行程序按钮,运行程序此时此时sine2.dat的控制窗口会显示数据从文件调入存储的控制窗口会显示数据从文件调入存储器的进程器的进程l((8)当)当sine2.dat的数据全部调入存储器中以后,单击的数据全部调入存储器中以后,单击调试工具条上的按钮,暂停程序的运行调试工具条上的按钮,暂停程序的运行 l((9)数据的图形化显示数据的图形化显示图图5­25 “Graph Property Dialog”对话框对话框 图5-26 Input/Output图线l((10)如果把探测点设置为断点,点击)如果把探测点设置为断点,点击“Animate”图图标,则图线会不断地更新标,则图线会不断地更新 和和“Run”命令不同,命令不同,“Animate”使得程序运行使得程序运行得到断点后会继续执行,直到手动停止得到断点后会继续执行,直到手动停止。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.