KeiluVision集成开发环境.ppt
Keil uVision集成开发环境,4.4 利用Keil uVision集成开发环境调试程序4.5 利用ISP工具将程序下载到单片机中验证程序,4.4 利用Keil uVision集成开发环境调试程序,4.4.1 Keil uVision集成开发环境简介4.4.2 Keil uVision集成开发环境中调试单片机汇编语言程序的方法,4.4.1 Keil uVision集成开发环境简介,Keil uVision 集成开发环境(IDE,以下简称uVision)是一个基于Windows的开发平台,包含高效的编辑器、项目管理器和MAKE工具。uVision支持所有的KEIL 8051工具,包括C编译器、宏汇编器连接/定位器、目标代码、到HEX的转换器。uVision通过以下特性加速嵌入式系统(单片机应用系统)的开发过程:全功能的源代码编辑器器件库用来配置开发工具设置项目管理器用来创建和维护项目 集成的MAKE工具可以汇编编译和连接用户的嵌入式应用所有开发工具的设置都是对话框形式的真正的源代码级的对CPU和外围器件的调试器高级GDIAGDI接口用来在目标硬件上进行软件调试以及和Monitor-51进行通信与开发工具手册和器件数据手册和用户指南有直接的链接,安装完成后的界面,安装授权的方法是,在“File”菜单中选择“License Management.”菜单项,弹出“License Management”对话框,在这里输入授权号,根据这个号码,向经销商索取授权号,4.4.2 Keil uVision集成开发环境中调试单片机汇编语言程序的方法 uVision集成开发环境中包括一个项目管理器,它可以使单片机应用系统设计变得简单。要创建一个应用,需要按下列步骤进行操作:1)启动uVision,新建一个项目文件并从器件库中选择一个器件 2)新建一个源文件并把它加入到项目中 3)针对目标硬件设置工具选项 4)编译项目并生成可以编程到程序存储器的HEX文件 5)下载到单片机中进行仿真调试,1.启动uVision2并创建一个项目,新建一个项目文件,选择单片机型号,选择单片机型号,拷贝启动代码提示,2新建一个源文件并把它加入到项目中,新文件内容见下页,【例4-4】假设晶振频率为6MHz。将STC2C5A60S2单片机片内集成的外部RAM 0000H000FH单元的内容清零,然后循环从P1.0输出10ms方波。$INCLUDE(STC12C5A.INC);包含STC12C5A60S2单片机寄存器定义文件ORG0000HLJMPMAINORG0100HMAIN:MOVSP,#70H;设置堆栈指针MOVDPTR,#0000HMOVR2,#10HCLRALOOP1:MOVXDPTR,AINCDPTRDJNZR2,LOOP1;将XRAM 0000H000FH单元的内容清零SETBP1.0LOOP2:CPLP1.0LCALLDELAYLJMPLOOP2;输出方波DELAY:MOVR2,#100;10ms延时子程序DLY_LOOP:MOVR7,#150LOOP:DJNZR7,LOOPDJNZR2,DLY_LOOPRETEND,保存文件,输入文件名,加入源程序文件到项目中,选择文件类型,然后选择文件,加入文件到源程序组,选择文件类型,3针对目标硬件设置工具选项,在此设置使用晶振的频率,4.编译项目并生成可以编程到程序存储器的HEX文件,自动填入与工程名相通的HEX文件名,选中“Create HEX File”复选框,1)设置编译选项,设置生成HEX文件,2)编译失败时的提示,双击错误信息行,可进行错误定位,出错的行,3)编译成功时的提示,5对程序进行软件模拟调试或者下载到单片机中进行仿真调试,选择软件模拟调试功能,从“Debug”菜单中选择“Start/Stop debug session”菜单项(快捷键是Ctrl+F5),或者从工具条中单句“Start/Stop debug session”按钮,,开始模拟调试过程。,掌握常见的调式技术(连续运行、单步运行、单步跳过运行程序、运行到光标所在行、设置断点、存储器查看、查看变量、查看外围等),设置断点的菜单项,存储器查看窗口,插入/删除断点菜单项,外部RAM存储器查看窗口,P1口的观察窗口,“Watch”窗口,4.5 利用ISP工具将程序下载到单片机中验证程序,1.ISP下载程序的运行过程,2.使用ISP工具下载程序的步骤,启动ISP软件,用户根据实际使用效果选择限制最高通信波特率,如 57600,38400,19200,开发调试时,可考虑选择此项,图4-26 ISP工具启动后的界面,下载程序时,可以按照下面的步骤进行:(1)从“MCU Type”下拉列表框中选择所使用的单片机的型号,如选择STC12C5A60S2。(2)单击“OpenFile/打开文件”按钮,打开要下载的用户程序文件。用户程序文件的后缀名为.bin或者.hex。第一次装入文件进缓冲区时,要选中“打开文件前清0缓冲区”复选框,以清缓冲区。如果要装入几个文件进缓冲区,如EEPROM里的数据文件需要和应用程序文件同时下载到单片机中时,除每次均要指定缓冲区起始地址外,第二次及以后不能清缓冲区。(3)在COM下拉列表框中选择计算机所用的串行口,如COM1、COM2等。有些新式笔记本电脑没有RS-232串行口,可买一条USB-RS232转接电缆(在作者设计的学习套件中,已经将USB-RS232转换功能集成到学习板上,用户不必再考虑转换问题)。选择串行口后,根据实际使用效果,从“最高波特率”下拉框中选择限制最高通信波特率,如57600、38400或者19200等。,(4)进行时钟源的选择、启动下载的条件以及设置数据Flash区是否清零。时钟源选择:选择下次冷启动后,时钟源为“内部R/C振荡器”还是“外部晶体或时钟”。启动下载的条件:如果用户系统的P3.0和P3.1连接到了RS-485电路,推荐选择“下次冷启动P1.0/P1.1 等于0,0才可以下载程序”,这样冷启动后如P1.0和P1.1不同时为0,单片机直接运行用户程序,免得由于RS-485总线上的乱码造成单片机反复判断乱码是否为合法,浪费几百ms的时间。实际上,如果用户系统本身P3.0和P3.1就是做串行口使用,也建议选择“下次冷启动P1.0/P1.1 等于0,0才可以下载程序”,以便下次冷启动直接运行用户程序。“下次下载用户用用程序时将数据Flash区一并擦除”选项用于选择是否在下载用户程序时,将数据Flash区清零,默认设置是“NO”。此外,这一步还包括:复位引脚的设置(主要是针对P4.7的设置)、上电复位是否增加额外的复位延时以及振荡器放大增益的设置。(5)在右下角的“选项”区域中,用户可以将P4.6脚设置为第二复位脚,时钟频率高于12MHz时,建议使用第二复位功能脚。也可以进行看门口的设置。(6)单击“Download/下载”按钮,将用户程序下载到单片机内部。重复下载时,可重复执行该操作,也可单击“Re-Download/重复下载”按钮。,注意:,下载时,一定要先单击“Download/下载”按钮,然后再给单片机上电复位(先彻底断电),而不要先给单片机上电。如果先给单片机上电,单片机检测不到合法的下载命令流,单片机就直接运行用户程序了。下载完成后,请将单片机的供电电源断开(有时需要稍等片刻,以将电源滤波电容存储的电释放),然后重新给单片机上电,新的设置才会生效,并执行用户程序。,1有4个两位BCD数以压缩形式存入30H、31H、32H和33H单元,将它们转换成ASC码分别保存在40H开始单元中。试编程实现之并在Keil uVision集成开发环境中进行模拟调试,观察运行结果。2试编制多字节BCD码加法程序。3试编制一排序子程序,对RAM区40H49H单元中的无符号数按从大到小顺序排序。利用Keil uVision集成开发环境中进行模拟调试,观察运行结果。4试编写二进制数转成BCD码的子程序。5将存于外部RAM中的0010H单元的1字节二进制数(假定其值小于64H)转换为十进制数,以两位BCD码的形式存与内部RAM的20H单元中。利用Keil uVision集成开发环境中进行模拟调试,观察运行结果。6分别编写延时1ms、100ms的子程序。设单片机的晶振为12MHz。7采用不同指令编程实现内部RAM区40H,41H两单元数据互换。8两位BCD数以压缩形式存入30H单元,试编程将其转换成ASC码分别保存在40H、41H单元中。9试编制一温度A/D采样标度转换程序。A/D采样为8位,温度范围:070。,4.6 思考题,