复习课件单片机实验报告docxWord下载.docx

上传人:b****5 文档编号:20902098 上传时间:2023-01-26 格式:DOCX 页数:44 大小:4.07MB
下载 相关 举报
复习课件单片机实验报告docxWord下载.docx_第1页
第1页 / 共44页
复习课件单片机实验报告docxWord下载.docx_第2页
第2页 / 共44页
复习课件单片机实验报告docxWord下载.docx_第3页
第3页 / 共44页
复习课件单片机实验报告docxWord下载.docx_第4页
第4页 / 共44页
复习课件单片机实验报告docxWord下载.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

复习课件单片机实验报告docxWord下载.docx

《复习课件单片机实验报告docxWord下载.docx》由会员分享,可在线阅读,更多相关《复习课件单片机实验报告docxWord下载.docx(44页珍藏版)》请在冰豆网上搜索。

复习课件单片机实验报告docxWord下载.docx

0000H

LJMP

STAR

0100H

STAR:

MOV

SP,#60H

R0,#Address1

DPTR,#Address2

R7,#10H

STAR1:

A,@R0

传送

MOVX

@DPTR,A

INC

R0

DPTR

DJNZ

R7,STAR1

STAR2:

B,@R0

比较

A,@DPTR

CJNE

A,B,STAR3

R7,STAR2

SJMP

$

传送正确

STAR3:

传送错误

END

实验二双字节BCD码(十进制数)加法

熟悉51汇编指令,学会使用星研集成环境软件,能自己编写简单的程序,熟悉BCD码,了解如何调用系统提供的子程序。

从键盘上输入4位被加数、加数,实现双字节BCD码(四位数)的加法,结果显示在数码管上;

熟悉使用断点、单步进入、单步、运行到光标处、修改PC指针、全速运行等各种调试手段;

三、实验框图

1、连线说明:

D3区:

CLK

——

B2区:

2M

CS

A3区:

CS5

A0

2、在F4区的键盘上输入4位被加数、加数

3、结果显示在F4区的数码管上

EXTRN

CODE(Display8,GetBCDKey)

Buffer

8字节显示缓冲区

F1

BIT

0D1H

PSW.1

START

START:

CLR

先清除显示,再接收键输入

START1:

R0,#buffer

A,#4

按键次数

LCALL

GetBCDKey

得到双字节十进制数(被加数)

SETB

接收到第一个键,才清除显示

R0,#buffer+4

得到双字节十进制数(加数)

A,buffer+1

ADD

A,buffer+5

DA

A

buffer+5,A

A,buffer

ADDC

A,buffer+4

buffer+4,A

RLC

Display:

PUSH

ACC

显示结果

低位

ACALL

B1toB2

压缩BCD码转换成非压缩BCD码

高位

POP

进位

@R0,#10H

最高二位消隐

R0,#buffer+5

R7,#5

BlackDisplay

将高位0消隐

Display8

START1

将一个字节压缩BCD码转换成二个字节非压缩BCD码

B1toB2:

ANL

A,#0FH

@R0,A

A,#0F0H

SWAP

RET

BlackDisplay:

JNZ

Exit

A,#10H

DEC

R7,BlackDisplay

Exit:

实验三双字节BCD码(十进制数)减法

熟悉51汇编指令,学会使用星研集成环境软件,掌握汇编语言的设计和调试方法。

能看懂程序流程框图,能自己设计程序,熟悉BCD码、补码,了解如何调用系统提供的子程序。

从键盘上输入4位被减数、减数,实现双字节BCD码(四位数)的减法,结果显示在数码管上;

进一步熟悉使用断点、单步进入、单步、运行到光标处、修改PC指针、全速运行等各种调试手段;

2、在F4区的键盘上输入4位被减数、减数

五、程序清单

得到双字节十进制数(被减数)

得到双字节十进制数(减数)

A,#9AH

C

SUBB

A,#99H

减数取补

F0,C

借位标志

JC

Display

XCH

A,#00H

最高四位消隐

R0,#buffer+3

R7,#3

JB

F0,Exit1

@R0,#11H

负数标志

Exit1:

实验四四字节十六进制数转十进制数

进一步熟悉51汇编指令,了解十六进制数转十进制数的方法。

从键盘上输入8位十六进制数,实现四字节十六进制数转8位十进制数,并在数码管上显示。

注意输入数据必须在00000000H~05F00000H范围,否则,结果超出8位十进制数,无法正确显示。

2、在F4区的键盘上输入8位十六进制数

CODE(Display8,GetKey)

A,#8

GetKey

得到4字节十六进制数

接收到第一个键后,才清除显示

R0,buffer

R1,buffer+1

R2,buffer+2

R3,buffer+3

B4toD4

转换成十进制数

A,R7

A,R6

A,R5

A,R4

R0,#buffer+7

R7,#7

四字节十六进制数转十进制数:

R0R1R2R3为十六进制,R4R5R6R7为压缩BCD码

B4toD4:

R4,A

R5,A

R6,A

R7,A

B,#32

LOOP:

A,R3

R3,A

A,R2

R2,A

A,R1

R1,A

A,R0

R0,A

A,R5

B,LOOP

 

实验五双字节BCD码(十进制数)乘法

进一步熟悉51汇编指令,掌握汇编语言的设计和调试方法。

根据程序流程图,自己设计程序,了解如何调用系统提供的子程序。

从键盘上输入4位被乘数、乘数,实现四位十进制数的乘法,结果显示在数码管上。

2、在F4区的键盘上输入4位被乘数、乘数

得到双字节十进制数(被乘数)

D4toB2

转换成二进制数

02H

03H

得到双字节十进制数(乘数)

01H

00H

WordMul

(R0R1)*(R2R3)=R0R1R2R3

双字节十六进制数乘以双字节十六进制数子程序

WordMul:

(R0)(R1)

B,R1

×

(R2)(R3)

MUL

AB

---------------------------

(R3R1H)(R3R1L)

R7,B

(R3R0H)(R3R0L)

B,R0

(R2R1H)(R2R1L)

(R2R0H)(R2R0L)

--------------------------------

R0R1R2R3

A,B

B,R2

B

双字节十进制数转二进制数,R0--指向双字节十进制数,结果在R2R3中

D4toB2:

B,#10

R2,B

A,#0

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

当前位置:首页 > 高等教育 > 理学

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

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