静态存储器扩展实验报告
一、实验目的1.掌握单片机系统中存储器扩展的方法;2.掌握单片机内部RAM和外部RAM之间数据传送的特点。二、软件、硬件环境要软件、硬件环境要求
1、软件环境要求Wi
dowsXP操作系统以及KeilC51单片机集成开发环境。2、硬件环境要求电脑一台,TD51单片机系统。
三、实验内容
编写实验程序,在单片机内部一段连续RAM空间30H~3FH中写入初值00H~0FH,然后将这16个数传送到RAM的0000H~000FH中,最后再将外部RAM的0000H~000FH空间的内容传送到片内RAM的40H~4FH单元中。
四、实验原理
存储器是用来存储信息的部件,是计算机的重要组成部分,静态RAM是由MOS管组成的触发器电路,每个触发器可以存放1位信息。只要不掉电,所储存的信息就不会丢失。因此,静态RAM工作稳定,不要外加刷新电路,使用方便。但一般SRAM的每一个触发器是由6个晶体管组成,SRAM芯片的集成度不会太高,目前较常用的有6116(2K×8位),6264(8K×8位)和62256(32K×8位)。本实验以62256为例讲述单片机扩展静态存储器的方法。SST89E554RC内部有1K字节RAM,其中768字节(00H~2FFH)扩展RAM要通过MOVX指令进行间接寻址。内部768字节扩展RAM与外部数据存储器在空间上重叠,这要通过AUXR寄存器的EXTRAM位进行切换,AUXR寄存器说明如下:
EXTRAM:内部外部RAM访问0:使用指令MOVXRiDPTR访问内部扩展RAM,访问范围00H~2FFH,300H以上的空间为外部数据存储器;1:0000H~FFFFH为外部数据存储器。AO:禁止使能ALE0:ALE输出固定的频率;
f1:ALE仅在MOVX或MOVC指令期间有效。
五、实验步骤
1按图连接使用电路;2按实验内容编写实验程序,经编译、链接无误后启动调试;3打开存储器观察窗口,在存储器#1的Address中输入D0x30,在存储器#2的Address中输入X0x0000来监视存储器空间;4可单步运行程序,观察存储器内容的变化,或在while1语句行设置断点再运行程序,验证实验功能。
六、实验程序
程序流程图:
程序清单:
ORGLJMP0000HMAIN
fORGMAINMOVMOVMOVLOOPMOVINCINCDJNZMOVMOVMOVLOOP1MOVMOVXINCINCDJNZMOVMOVMOVLOOP2MOVXMOVINCINCDJNZSJMPEND
0100HR110HA00HR030HR0AAR0R1LOOPR110HR030HDPTR0000HAR0DPTRADPTRR0R1LOOP1R110HR040HDPTR0000HADPTRR0ADPTRR0R1LOOP2;循环次数16;给A赋初值值为0
;将00H~0FH写入内部RAM30H~3FH
;R1不为0则循环,否则结束;循环次数16
;写入外部RAM0000H~000FH中;30H的内容给累加器A;A的内容给0000H
;R1不为0则循环,否则结束;循环次数16
;写入内部RAM40H~4FH中;0000H的内容给Ar