单片机实验汇编--扩展存储器读写实验

扩展存储器读写实验

一.实验要求
编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。
二.实验目的
1.学习片外存储器扩展方法。
2.学习数据存储器不同的读写方法。
三.实验电路及连线
单片机实验汇编--扩展存储器读写实验
将P1.0接至L1。CS256连GND孔。
四.实验说明
1.单片机系统中,对片外存贮器的读写操作是最基本的操作。用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。
用户编程可以参考示例程序和流程框图。本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。读写数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。
用户调试该程序时,可以灵活使用单步、断点和变量观察等方法,来观察程序执行的流程和各中间变量的值。
2.在I状态下执行MEM1程序,对实验机数据进行读写,若L1灯亮说明RAM读写正常。
3.也可进入LCA51的调试工具菜单中的对话窗口,用监控命令方式读写RAM,在I状态执行SX0000↓ 55,SPACE, 屏幕上应显示55,再键入AA,SPACE,屏幕上也应显示AA,以上过程执行效果与编程执行效果完全相同。
注:SX是实验机对外部数据空间读写命令。
4.本例中,62256片选接地时,存储器空间为0000~7FFFH。

五.实验程序框图
实验示例程序流程框图如下:
单片机实验汇编--扩展存储器读写实验

六.实验源程序:
ORG 0000H
LJMP START
ORG 0040H
START:
MOV SP,#60H
MOV DPTR,#0000H ;置外部RAM读写地址
MOV A,#55H ;测试的数据一
MOV B,A
MOVX @DPTR,A ;写外部RAM
MOVX A,@DPTR ;读外部RAM
XRL A,B ;比较读回的数据
JNZ ERROR
MOV A,#0AAH ;测试的数据二
MOV B,A
MOVX @DPTR,A
MOVX A,@DPTR
XRL A,B
JZ PASS ;测试通过
ERROR: SETB P1.0 ;测试失败,点亮LED
SJMP $
PASS: CPL P1.0 ;LED状态(亮/灭)转换
MOV R1,#00H ;延时
DELAY: MOV R2,#00H
DJNZ R2,$
DJNZ R1,DELAY
LJMP START ;循环测试
END

微信公众号“伊斯电子编程”