当前位置:文档之家› Keil C51集成开发环境的使用汇编

Keil C51集成开发环境的使用汇编

Keil C51集成开发环境的使用Keil C51软件可以从相关网站下载并安装。

安装好后,双击桌面快捷图标或在“开始”菜单中选择Keil μVision3,启动Keil μVision3集成开发环境,启动后界面如图4-3所示。

图4-3 Keil μVision3启动后的集成开发环境界面(一)创建项目Keil μVision3中有一个项目管理器,用于对项目文件进行管理。

它包含了程序段环境变量和编程有关的全部信息,为单片机程序的管理带来了很大的方便。

创建一个新项目的操作步骤如下:(1)启动μVision3,创建一个项目文件,并从器件数据库中选择一款合适的单片机型号。

(2)创建一个新的源程序文件,并把这个源文件添加到项目中;(3)为该单片机芯片添加或配置启动程序代码;(4)设置工具选项,使之适合目标硬件;(5)编译项目并创建一个*.hex文件。

下面以本章任务为例分别介绍每一步的具体操作。

1.新建项目文件单击菜单“Project”→“New Project”命令,弹出如图4-4所示的新建项目对话框,指定保存路径,建议每个项目使用一个独立文件夹,例如本项目保存在“第4章”文件夹;然后,在“文件中名”输入项目名称,例如“4-1”,单击“保存”按钮即完成新项目的创建(系统默认扩展名为“.uv2”)。

保存路径输入文件名图4-4 新建项目对话框此时弹出选择单片机的型号对话框,如图4-5所示,展开Atmel系列单片机,选择“AT89C51”,单击“确定”按钮完成设备的选择。

图4-5 选择单片机的型号对话框单片机型号选择结束后,在μVision3工作界面左边的项目管理器中新增加了一个“Target 1”目标1文件夹,如图4-6所示。

图4-6 项目管理器中新增“Target 1”对话框2.新建源程序文件单击菜单“File”→“New”命令,就可以创建一个源程序文件。

该命令会打开一个空的编辑器窗口,默认名为“Text 1”,输入如下源程序:/******************************************************************名称:流水灯控制模块名:AT89C51,74LS373功能描述:当开关打开时,LED自上而下依次点亮;当开关闭合时,LED从下向上依次点亮。

******************************************************************/#include<reg51.h>#define uchar unsigned char //类型重定义#define uint unsigned intsbit Key = P0^0; //定义位名称void DelayMS(uint ms); //延时函数原型声明// 主程序void main( ){uchar i,keyPre,shift;Key = 1;while(1){keyPre = Key;if(keyPre){shift=0x01;for(i=0;i<8;i++){ P1 = ~shift; DelayMS(200); shift<<=1;}}else{ shift=0x80;for(i=0;i<8;i++){ P1 = ~shift; DelayMS(200); shift>>=1;}}}}/********************************************************************函数名称:DelayMS函数功能:延时函数入口参数:参数ms控制循环次数,从而控制延时时间长短********************************************************************/void DelayMS(uint ms){uchar i;while(ms--)for(i=0; i<120; i++);}程序输入完毕后,单击“File”→“Save”命令对源程序进行保存,在保存时,文件名可以是字符、字母或数字,并且一定要带扩展名(使用汇编语言编写的源程序,扩展名为.asm,使用单片机C语言编写的源程序,扩展名为.c)。

保存好源程序后,源程序窗口中的关键字呈彩色高亮显示。

这里保存为“4-1.c”。

特别注意:源程序扩展名“.c”必须手动输入,表示为C语言程序,使Keil C51采用对应的C语言的方式来编译源程序。

源程序文件创建好后,可以把这个文件添加到项目管理器中。

单击项目管理器中“Target 1”文件夹旁边的“+”按钮,展开后在“Source Group 1”上单击右键,弹出快捷菜单,如图4-7所示。

选择“Add Files to Group ’Source Group 1’”命令,弹出如图4-8所示的加载文件对话框。

在该对话框中选择文件类型为“c Source file”,找到刚才创建的“4-1.c”源程序文件,然后单击“Add”按钮,4-1.c即被加入到项目中,此时对话框不消失可以继续加载其它文件。

单击“Close”按钮将对话框关闭。

图4-7 在快捷菜单中选择加载源程序文件命令图4-8 在对话框中选择要添加的文件此时在Keil软件项目管理器的“Source Group 1”文件夹中可以看到新加载的4-1.c文件。

3.为目标1设置选项选中Target 1,单击菜单“Project”→“Options for Target ‘Target 1’”命令,弹出为目标1的设置选项对话框,如图4-9所示,共有11个选项,其中“Target”、“Output”和“Debug”选项较为常用,默认打开“Target”选项。

图4-9 为目标1设置选项对话框在该选项中可以对目标硬件及所选器件片内部件进行参数设置:包括指定CPU时钟频率;是否使用片上自带的ROM存储器;指定C51编译器的存储模式(默认为SMALL模式);指定ROM存储器大小使用;指定片外程序存储器和片外数据存储器的地址范围(如果没有则不填)等。

4.编译项目并创建*.hex文件单片机不能处理C语言程序,必须将C程序转换成二进制或十六进制代码,这个转换过程称为汇编或编译。

Keil C51软件本身带有C51编译器,可将C程序转换成十六进制代码,即*.hex文件。

在完成项目设置后,就可对源程序进行编译。

执行菜单“Project”→“Rebuild all target files”命令,可以编译源程序并生成目标文件。

如果程序有错,则编译不成功,μVision3将会在输出窗口(“View”→“Output Window”命令切换显示或屏蔽此窗口)的编译页中显示如图4-10所示信息,双击某一条错误信息,光标将会停留在μVision3文本编辑窗口中出现语法错误或警告的位置处,修改并保存后,重新编译,直至正确无误。

图4-10 错误和警告信息若成功创建并编译了应用程序,就可以开始调试。

当程序调试好之后,要求创建一个*.hex文件,生成的*.hex文件可以下载到EPROM或仿真器中。

若要创建*.hex文件,必须在为目标设置选项,在“Output”选项卡中选中“Create HEX file”复选框,如图4-11所示,单击“确定”按钮完成所需设置。

设置完成后,执行菜单“Project”→“Rebuild all target files”命令即可。

选中“生成.HEX文件”图4-11 编译时生成“HEX”文件设置打开“第4章”文件夹,可以看到已经创建了的4-1.HEX文件。

(二)调试程序1.CPU仿真使用μVision3可对源程序进行测试,它提供了两种工作模式,这两种模式可以在“Options for Target ‘Target 1’”对话框的“Debug”选项卡中进行选择,如图4-12所示。

图4-12 仿真调试设置“Use simulator”:软件仿真模式,将μVision3调试器配置成纯软件产品,能仿真8051系列的绝大多数功能而不需任何硬件目标板,如串行口、外部I/O和定时器等,这些外围部件是在选择单片机CPU时选定的。

“Use”:硬件仿真,用户选择相应的硬件仿真器仿真。

如果选中Use:Keil Monitor-51 Driver硬件仿真选项,还可以单击右边的Settings按钮,对硬件仿真器连接情况进行设置,如图4-13所示。

图4-13 仿真器连接参数设置Port:串行口号,仿真器与计算机连接的串行口号。

Baudrate:波特率设置,与仿真器串行通信时的波特率,仿真器上的设置必须与它一致。

Serial Interrupt:选中它允许单片机串行中断。

Cache Option:缓存选项,可选可不选,选择可加快程序的运行速度。

2.启动调试源程序编译好后,选择相应的仿真操作模式,可启动源程序的调试。

单击图标或执行菜单“Debug”→“Start/Stop Debug Session”命令,可以启动μVision3的调试模式,调试界面如图4-14所示。

Keil内建了一个仿真CPU用来模拟执行程序,该仿真CPU功能强大,可以在没有硬件和仿真器的情况下进行程序的调试。

图4-14 调试界面进入调试状态后,“调试”菜单项中原来不能用的命令现在已可以使用了,而且工具栏多出一个用于运行和调试的工具条,如图4-15所示,Debug菜单上的大部分命令可以在此找到对应的快捷按钮,从左到右依次是复位、连续运行、暂停运行、单步运行、过程单步运行、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令。

图4-15 运行调试工具条3.断点的设定和删除在μVision3中,用户可以采用以下不同的方法来定义断点:(1)在文本编辑窗口或反汇编窗口中选定所在行,然后单击工具栏的设置断点按钮图标,或执行菜单“Debug”→“Insert/Remove Breakpoint ”命令。

(2)在文本编辑窗口或反汇编窗口中选定所在行,单击右键,从打开的快捷菜单中选择“Insert/Remove Breakpoint”命令。

(3)利用“Debug”下拉菜单,打开“Breakpoints…”对话框,在这个对话框中可以查看定义或更改断点设置。

4.目标程序的执行目标程序的执行可以使用以下方法:(1)使用菜单“Debug”→“Run”命令或命令按钮或按下功能键“F5”全速执行程序。

(2)使用菜单“Debug”→“Step”命令或相应的命令按钮或使用功能键F11可以单步执行程序,(3)使用菜单“Debug”→“Step Over”命令或相应的命令按钮或功能键F10可以以过程单步形式执行命令,所谓过程单步,是指把C语言中的一个函数作为一条语句来全速执行。

相关主题