单片机软件实验1清零实验文档格式.docx

上传人:b****5 文档编号:17016027 上传时间:2022-11-27 格式:DOCX 页数:12 大小:104.92KB
下载 相关 举报
单片机软件实验1清零实验文档格式.docx_第1页
第1页 / 共12页
单片机软件实验1清零实验文档格式.docx_第2页
第2页 / 共12页
单片机软件实验1清零实验文档格式.docx_第3页
第3页 / 共12页
单片机软件实验1清零实验文档格式.docx_第4页
第4页 / 共12页
单片机软件实验1清零实验文档格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

单片机软件实验1清零实验文档格式.docx

《单片机软件实验1清零实验文档格式.docx》由会员分享,可在线阅读,更多相关《单片机软件实验1清零实验文档格式.docx(12页珍藏版)》请在冰豆网上搜索。

单片机软件实验1清零实验文档格式.docx

实验问答:

1.清零之后,90H-9FH的内容是什么?

A0H-AFH的内容是什么?

答:

90H-9FH内容:

00H;

A0H-AFH:

#55H

2.累加器A、堆栈指针SP的初始状态是什么?

累加器A:

00H,堆栈指针SP:

07H。

实验程序:

================================================

$NOMOD51

$INCLUDE(80C52.MCU)

;

===============================================

DEFINITIONS

VARIABLES

RESETandINTERRUPTVECTORS

;

ResetVector

org0000h

jmpStart

CODESEGMENT

org0100h

Start:

MOVR0,#90H

MOVR3,#20H

LOOP1:

MOV@R0,#55H

INCR0

DJNZR3,LOOP1

MOVR2,#10H

MOVR1,#90H

CLR0:

MOV@R1,#00H

INCR1

DJNZR2,CLR0

Writeyourcodehere

Loop:

jmpLoop

END

**单个实验报告内容限制在两页之内,采用双面打印,所有报告统一装订;

表头内容需要手工签写。

软件设计实验2:

拆字拼字实验

进一步掌握汇编语言设计和调试方法。

使用AT89C52单片机对单片机内部RAM存储的数据进行拆字和拼字实验,实验内容如下:

1.将40H地址的内容设置为#8AH;

2.将40H地址的内容进行拆分,高字节保存在31H,低字节保存在32H;

3.将31H、32H地址的内容进行合并,保存在30H。

1.运行程序后30H和40H的最终内容是?

都是#8AH

2.如果欲使30H内容为0A8H,程序应如何修改?

将30H值赋予A,再SWAPA,然后将A赋予30H。

MOV40H,#8AH

MOVA,40H

ANL31H,#0FH

ANL32H,#0FH

MOVR1,#32H

XCHDA,@R1

SWAPA

DECR1

XCHDA,@R1;

拆分结束

CLRA

MOV30H,A;

合并结束

软件设计实验3:

查找相同数个数实验

熟悉汇编语言编程,掌握判断与跳转语句的使用。

使用AT89C52单片机对单片机内部RAM进行查找相同数,输出其个数的实验,实验内容如下:

1.初始化后,B0H-BFH地址的内容为#00H,将B9H的内容赋值为#01H,将BBH的内容赋值为#01H;

2.在B0H-BFH中查找有几个单元存放的内容是#00H,把个数放在R7中。

1.如需使用第2组工作寄存器的R7,需如何修改程序?

更改起始单元地址,用位操作指令将RS0和RS1分别置为0,1

2.如需从B0H单元开始,查32个单元的内容,需修改程序哪个语句,如何修改?

将循环计数标志置为#20H

MOVR2,#0FH

MOVR1,#0B0H

INCR1

DJNZR2,LOOP1

MOVR0,#0B9H

MOV@R0,#01H

MOVR1,#0BBH

MOV@R1,#01H;

初始化结束

MOVR2,#10H;

15次循环

MOVR7,#00H

RESEARCH:

CJNE@R1,#00H,NEXT

INCR7

NEXT:

INCR1

DJNZR2,RESEARCH

软件设计实验4:

二进制转ASCII实验

熟悉ASCII的编码原理,学习其与二进制之间的转换。

1.将#9FH转为相应的ASCII;

2.将结果存放到30H、31H地址;

3.查表的方式实现。

1.简述ASCII、BCD码与二进制之间的关系。

BCD:

使用16进制的前10个进行编码,用四位二进制数表示十进制数

ASCII:

标准信息编码,用二进制表示字符的规定,每一个字符对应一个二进制数

2.简述MOVC两条指令,并说明其作用及区别。

MOVCA,@A+DPTR:

以DPTR为基址以A为变址进行寻址,用于查表

MOVCA,@A+PC:

以PC为基址以A为变址进行寻址,PC指向下一条指令,用于查表

MOVA,#9FH

ANLA,#0FH

ACALLCHECK

MOV30H,A

MOVA,#9FH

MOV31H,A

SJMP$

CHECK:

INCA

MOVCA,@A+PC

RET

TABLE:

DB30H,31H,32H,33H,34H,35H,36H,37H,38H,39H

DB41H,42H,43H,44H,45H,46H

软件设计实验5:

数据块传送实验

掌握外部扩展RAM中的数据操作。

1.对2040H地址开始的100个字节进行赋值,值为#5AH;

2.将2040H地址开始的20个字节传送到以0030H开始的目的地址。

3.简述MOVX两组指令,并说明其作用及区别。

MOVXA,@Ri:

片外RAM8位地址送入累加器

MOVXA,@DPTR:

片外RAM16位地址送入累加器

MOVX@Ri,A:

累加器送入片外RAM8位地址

MOVX@DPTR,A:

累加器送入片外RAM16位地址

 

4.单片机访问外部RAM时,使用了哪几个控制信号引脚?

WR,RD,ALE

MOVR0,#64H

MOVDPTR,#2040H

MOVA,#5AH

L1:

MOVX@DPTR,A

INCDPTR

DJNZR0,L1

MOVR0,#14H

MOVR1,#30H

MOVP2,#00H

L2:

MOVXA,@DPTR

MOVX@R1,A

DJNZR0,L2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1