实验一

2019-06-17 12:09

实验一、数据传送及输入输出接口实验

1、实验目的

1.1 掌握51单片机数据传送指令;

1.2 熟悉51单片机汇编语言程序设计方法; 1.3 掌握Keil 集成开发环境的使用;

1.4 练习51单片机汇编语言程序的编辑、汇编和模拟调试。

2、实验内容

数据传送类程序设计

1)设计数据区清零程序,将片内RAM 20H~5FH单元清零。 2) 设计数据块传送程序,将片内RAM 30H~3FH单元的数据顺序传送到片内RAM 50H~5FH单元。 3)设计数据块传送程序,将片内RAM50H~5FH单元的数据顺序传送到片外RAM 1000H~100FH单元。

3、实验设备

Keil仿真

4、程序流程图

开始 开始 设数据区地址指针 设数据区地址指针R0=20H 设计数器初值 CLR A→A=0 R0=A=0 取源数据区数据 R0+1→R0 送入目的数据区 否 移地址指针 R2=5FH? 是 传送结束? 结束 结束

片内RAM 20H~5FH单元清零程序流程图 数据块传送程序流程图

5、程序清单及程序运行结果

实验1-1 设计数据区清零程序,将片内RAM 20H~5FH单元清零。 ;主程序 ORG 0000H MOV R0,#20H ;设置地址指针 LOOP: CLR A ;清空A里的内容 MOV @R0,A ;将A里的内容送给R0所对应的地址 INC R0 ;R0加1 CJNE R0,#5FH,LOOP ;判断R0是否为5FH,为5FH顺序执行,不为跳转到LOOP RET ;子程序返回指令 END

实验1-2 设计数据块传送程序,将片内RAM 30H~3FH单元的数据顺序传送到片内RAM 50H~5FH单元。 ;主程序 ORG 0000H MOV R0,#30H ;R0为原数据区地址指针 MOV R1,#50H ;R1为目的地址指针 MOV R2,#10H ;R2为数据长度 LOOP: MOV A,@R0 ;将R0对应位置的内容给A MOV @R1,A ;将A的内容给R1对应位置里 INC R0 ;R0加1 INC R1 ;R1加1 DJNZ R2,LOOP ;判断R2减一是否为0,为0则顺序执行,不为0则跳转到LOOP END

实验1-3 设计数据块传送程序,将片内RAM50H~5FH单元的数据顺序传送到片外RAM 1000H~100FH单元。 ;主程序 ORG 0000H MOV R0,#50H ;R0为原数据区地址指针

MOV DPTR,#1000H ;设置1000H为目的数据区地址指针 MOV R1,#10H ;数据长度10H给R1 LOOP: MOV A,@R0 ;将R0对应位置的内容给A MOVX @DPTR,A ;将A里的内容给片外地址指针 INC R0 ;R0加1 INC DPTR ;片外地址指针加1

DJNZ R1,LOOP ;判断R1减一是否为0,为0则顺序执行,不为0则跳转到LOOP END

6、思考题

设计数据块传送程序,将片外RAM的2000H~201FH单元的数据循环传送到片外RAM 1050H~106FH单元。

;主程序 ORG 0000H MOV R0,#2000H ;R0为原数据区地址指针

MOV DPTR,#1050H ;设置1050H为目的数据区地址指针 MOV R1,#20H ;数据长度20H给R1 LOOP: MOVX A,@R0 ;将R0对应位置的内容给A MOVX @DPTR,A ;将A里的内容给片外地址指针 INC R0 ;R0加1 INC DPTR ;片外地址指针加1

DJNZ R1,LOOP ;判断R1减一是否为0,为0则顺序执行,不为0则跳转到LOOP END


实验一.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:建筑施工企业安全生产模拟考核综合试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: