- 97
- 0
- 约1.81千字
- 约 4页
- 2020-11-05 发布于河北
- 举报
上海电力学院
单片机实验(2)
院 系: 电气工程学院
专业年级(班级): 2012028
学生姓名: 倪安安 学号:
指导教师: 赵永熹
成 绩:
2014年 11 月 21日
教师评语:
4、数据转换实验
一、实验目的
1.掌握89S52存储器之间的数据传送方法;
2.掌握指针操作方法;
二、实验原理及实验内容
在KEIL环境中编写并调试一个数据传送程序,并完成下面操作。①将40~4FH 数据送到数据存贮器7E00H~7E0FH中,②将数据存贮器7E00~7E0FH中的数据送到89S52内部RAM 50~5FH中。该实验无需将程序下载到实验系统中,只需在KEIL环境中完成仿真。
开始(40)~(4FH)传送到7E00~7E0FH16个数据传送到40~4F单元实验参考流程图
开始
(40)~(4FH)传送到7E00~7E0FH
16个数据传送到40~4F单元
(注意:流程图中的BP1,BP2,
BP3表示断点)
BP1
BP21
7E00~7E0FH传送到(
7E00~7E0FH传送到(50)~(5FH)
BP3
结束
结束
图7-1 数据传送实验程序框图
调试方法:
⑴打开仿真软件中内部数据空间和外部数据空间,在40~4Fh数据单元中分别送数,例如:1,2,3,4,…等16个数据。
⑵单步运行(断点设在BP2,程序运行至断点),检查外部RAM(7E00H~7F0FH)数据是否与40H~4FH数据一一对应。
⑶如果程序运行不能进入某一断点,则应单步、断点分段检查程序, 排除错误直至正确为止。
三、汇编程序
ORG 0000H
AJMP MAIN
MAIN:
MOV R6,#16 /*数据个数*/
MOV R0,#40H /*设置数据首地址*/
TRANDATA1: /*将40~4FH 数据送到数据存贮器7E00~7E0FH中*/
MOV @R0,P1 /*通过P1口传送数据*/
INC R0 /*下一个地址*/
DJNZ R6,TRANDATA1 /*直到16个数据送完*/
MOV R6,#16
MOV DPH,#7EH /*设置存放数据的RAM地址*/
MOV DPL,#00H
MOV R0,#40H
LOOP:
MOV A,@R0
MOVX @DPTR,A
INC DPTR
INC R0
DJNZ R7,LOOP
TRANDATA2: /*数据存贮器7E00~7E0FH内容送到内部RAM 50~5FH中*/
MOV R1,#50H /*设置数据首地址*/
MOV R7,#16 /*数据个数*/
MOV DPH,#7EH
MOV DPL,#00H
LOOP1:
MOVX A,@DPTR
MOV @R1,A
INC DPTR
INC R1
DJNZ R7,LOOP1
END
四、实验仪器和设备
Keil软件;
五、实验结果和数据分析
原创力文档

文档评论(0)