贵州大学_单片机实验报告_8051_8051程序设计实验一.doc
文本预览下载声明
明德至善 博学笃行
实验课程名称:单片机应用技术实验报告
实验项目名称:8051程序设计实验一
专业班级:
学生姓名:
学号:
实验成绩: 指导教师签字:
理 学 院
电子科学系
实验时间:2011年5月9日
实验二 8051程序设计实验一
数据传送 (设计性实验)
一、实验目的:
掌握8051汇编语言程序设计方法
⑵进一步熟悉Keil C51的运用。
二、实验内容:
数据传送:将AT89c51内部RAM40H-4FH置初值0~9ABCDEF,然后将40H-4FH的内容传送到内部RAM中的50H-5FH单元。
源程序:
ORG 0000H
SJMP MAIN
ORG 0080H
MAIN: MOV R0,#40H ; 将立即数40H送R0寄存器
MOV R2,#10H ; 将立即数10H送R2寄存器,用于计数
MOV A,#00H ; 累加器清零
A1: MOV @R0,A ; 将累加器中的数据送R0间址的RAM单元
INC R0 ; 寄存器R0内容自加
INC A ; 累加器内容自加
DJNZ R2,A1 ; 寄存器R2内容自减,不为零转A1
MOV R0,#50H ; 将立即数50H送R0寄存器
MOV R1,#40H ; 将立即数40H送R1寄存器
MOV R2,#10H ; 将立即数10H送R2寄存器,用于计数
A2: MOV A,@R1 ; 将R1间址的RAM单元中的数据送累加器
MOV @R0,A ; 将累加器中的数据送R0间址的RAM单元
INC R0 ; 寄存器R0内容自加
INC R1 ; 寄存器R1内容自加
DJNZ R2,A2 ; 寄存器R2内容自减,不为零转A2
A3: SJMP A3 ; 跳转至A3本身
END
三、实验步骤:
1、进入KEIL系统的操作环境。
2、建立一个工程。
3、输入汇编程序。
4、源程序编辑好后,就可对源文件进行编译,生成目标代码。
置初值,如图1所示:
5、运行、调试程序和结果检查
在Debug窗口下,分别采用单步、执行到光标处等命令运行程序。
数据传送,如图2所示:
图1 置初值到40H~4FH单元
图2 数据已传送至50H~5FH单元
四、实验总结:
1、将数据传送程序加上注释语句
2、总结Keil C51的建立一个工程、汇编、单步运行和全部运行的方法。
Keil C51中建立工程的方法:
单击菜单栏中的按钮,选择,在弹出的表单中的中输入工程名,单击按钮,在弹出的表单中的的列表框中选中CPU的型号,相应的描述会在的列表框中显示出来,包括单片机的一些重要的技术参数。之后单击按钮完成工程的创建,后面会提示一些如“是否载入标准的8051启动代码到工程文件夹中并添加文件到工程中”,如果觉得必要可以选“是”,也可选“否”。
汇编、单步运行和全部运行的方法:
编制好程序之后,单击工具条中的对程序进行编译,而按钮是重新编译时使用的,编译成功后,在编译输出窗口中会给出编译信息,如果提示,则说明编译成功,没有语法上的错误。可以进行运行调试。单击菜单栏中的按钮选择,或是在工具条中直接单击按钮也可进入调试界面,在该界面下单击工具条中的可以进行单步运行,如果单击则可进行全部运行,或在按钮选择和可以实现相应的功能。
明德至善 博学笃行
3 / 4
显示全部