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