2024年5月10日发(作者:)

单片机ROM、RAM之间数据传送

数据传送实验

一、实验目的

1、掌握单片机的汇编指令系统及汇编语言程序设计方法。

2、掌握单片机的存储器体系结构。

3、熟悉Keil软件的功能和使用方法。

4、掌握单片机应用程序的调试方法。

二、实验内容或原理

1、实现单片机内部RAM之间,外部RAM之间以及内部RAM

与外部RAM之间的数据传送。

2、利用Keil软件编辑、汇编、调试、运行实验程序并记

录实验数据。

三、设计要求

1、编写程序将00H~0FH 16个数据分别送到单片机内部

RAM 30H~3FH单元中。

2、编写程序将片内RAM 30H~3FH的内容传送至片内RAM

40~4FH单元中。

3、编写程序将片内RAM 40H~4FH单元中的内容传送到外

部RAM 4800H~480FH单元中。

4、编写程序将4800H~480FH单元内容送到外部RAM

5800H~580FH单元中。

5、编写程序将片外RAM 5800H~580FH单元内容传送回

片内RAM 50H~5FH单元中。

四、实验报告要求

1、实验目的和要求。

2、设计要求。

3、实验程序流程框图和程序清单。

4、实验总结。

5、思考题。

五、思考题

1、说明MCS-51系列单片机对片内RAM和片外RAM存贮器各

哪些寻址方式?

2、说明指令MOV A,20H和MOV C,20H中的20H含义有什

么不同?传送指令中的助记符MOV,MOVX,MOVC各适用

于访问哪个存储器空间?

程序如下:

ORG 0000H

START: LJMP MAIN

ORG 0030H

MAIN: MOV PSW, #00H

MOV R0, #20H

MOV R3, #96

ML: MOV @R0, #00H

DJNZ R3, ML

TAB: MOV DPTR, #SHUJU

MOV R0, #30H

MOV R4, #16

TAB1: CLR A

MOVC A, @A+DPTR

MOV @R0, A

INC R0

INC DPTR

DJNZ R4, TAB1

LCALL FUN

SHUJU:

H,0EH,0FH

FUN: MOV R4, #16

DB

00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,0AH,0BH,0CH,0D

MOV R0, #30H

MOV R1, #40H

TAC: CLR A

MOV A, @R0

MOV @R1, A

INC R1

INC R0

DJNZ R4, TAC

MOV R4, #16

MOV R1, #40H

MOV DPTR, #4800H

TBD: CLR A

MOV A, @R1

MOVX @DPTR, A

INC R1

INC DPTR

DJNZ R4, TBD

MOV R4, #16

MOV P2, #48H;((P2)(Ri))表示以(P2)为高8位地址

;以(Ri)为低8位地址的片外数据存储器单元

;P2为80C51单片机的P2口,其第二功能为传送地址的高8位。

MOV R0, #00H

TBE: MOVX A, @R0

MOV R3, P2

MOV P2, #58H

MOVX @R0, A

MOV P2, R3

DJNZ R4, TBE

MOV R4, #16

MOV DPTR, #5800H

MOV R0, #50H TCF: MOVX A, @DPTR

MOV @R0, A

INC DPTR

INC R0

DJNZ R4, TCF

END