实验一 KEIL 51软件实验
实验目的:
1、掌握KEIL集成开发环境的使用 2、掌握算术运算程序
实验设备:计算机、KEIL51软件 实验内容:
编程实现把片人RAM30H单元和40H单元两个16字节数相加,结果放于30H单元开始的位置处。在KEIL51编译、连接、仿真调试。
实验步骤:
一、运行KEIL51软件,出现图1所示KEIL 51主界面。
图1 KEIL 51主界面
首先用Project菜单下的New Project命令建立项目文件,过程如下。
(1) 选择Project菜单下的New Project命令,弹出如图2所示的Create new Project对话框。
图2 Create New Project对话框
(2) 在Create New Project对话框中选择新建项目文件的位置(最好一个项目建立一个文件夹如E:\\project),
输入新建项目文件的名称,例如,项目文件名为example,单击【保存】按钮将弹出如图3所示的Select Device for Target ‘Target 1’对话框,用户可以根据使用情况选择单片机型号。Keil uVision2 IDE几乎支持
所有的51核心的单片机,并以列表的形式给出。选中芯片后,在右边的描述框中将同时显示选中的芯片的相关信息以供用户参考。
图3 Select Device for Target ‘Target 1’对话框
(3) 这里选择atmel公司的AT89c51。单击【确定】按钮,这时弹出如图4所示的Copy Standard 8051 Startup
Code to Project Folder and Add File to Project确认框,C语言开发选择【是】,汇编语言开发选择【否】。单击后,项目文件就创建好了。项目文件创建后,在主界面的左侧的项目窗口可以看到项目文件的内容。这时只有一个框架,紧接着需向项目文件中添加程序文件内容。
图4 Copy Standard 8051 Startup Code to Project
Folder and Add File to Project确认框
二、给项目添加程序文件
当项目文件建立好后,就可以给项目文件加入程序文件了,Keil uVision2支持C语言程序,也支持汇编语言程序。这些程序文件可以是已经建立好了的程序文件,也可以是新建的程序文件,这里我们新建的汇编程序文件后再添加。
(1) 选择文件菜单上的new命令,出现新建文本窗口,如图5所示。
图5 新建文本窗口
在文本编辑窗口中输入加法程序。存盘,假设文件名为add16.asm。注意汇编程序文件扩展名为.asm,这时默认路径为工程文件夹。参考程序如下:
ORG 0000H LJMP MAIN ORG 1000H
MAIN:MOV R0,#30H
MOV R1,#40H MOV R2,#16 CLR C
LOOP: MOV A,@R0
ADDC A, @R1 MOV @R0,A INC R0 INC R1
DJNZ R2,LOOP SJMP $ END
(2) 添加文件到项目中。在项目管理器窗口中,展开Target1项,可以看到Source Group1子项。右击Source Group1,
在出现菜单中选择Add Files to Group ‘Source Group1’命令。出现添加文件的窗口,加程序add16.asm如到项目中。如图6所示。注意文件类型要选择为*.a*。
图5 添加程序文件到项目
三、编译、连接项目,形成目标文件
当把程序文件添加到项目文件中,并且程序文件已经建立好存盘后,就可以进行编译、连接,形成HEX目标文件(只在keil 51中软件仿真可以不形成目标文件)
(1)选择Project菜单下的Built Target命令(或快捷键F7) 编译、连接当前项目,编译、连接时,如果程序有错,则编译不成功,并在下面的信息窗口给出相应的出错提示信息,以便用户进行修改,修改后再编译、连接,这个过程可能会重复多次。如果没有错误,则编译、连接成功,并且在信息窗口给出提示信息。如图6所示。
图6 编译、连接后的显示图
(2)如果要做硬件下载可硬件仿真,则要形成HEX目标文件,须先对输出选项进行相应的设置,设置后再进行编译连接。方法如下:右击项目管理器窗口的Target1项,在右键菜单中选择下面的Options for Target ‘Target 1’命令,在Options for Target ‘Target 1’对话框选择Output选项卡,在该选项卡选中Create HEX File选项,选择生成HEX文件。如图7所示。