外接大容量存储器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

外接大容量存储器

部门: xxx

时间: xxx

整理范文,仅供参考,可下载自行编辑

51单片机访问大容量存储器的实现

时间:2006-09-19 来源: 作者: 点击: 1773 字体大小:【大中小】1 引言

MCS-51系列单片机有着优越的性价比,因此应用面宽,使用量也非常大;然而它只有16位地址线,最大能访问的存储空间为64K,且扩展接口与存储器统一编址,扩展接口会占用大量的地址空间,致使该系列单片机在数据量大的数据采集系统中,存储空间明显不足。

笔者最近在开发一数据采集系统时,经分析、探索,找到了解决的办法。

2 使用大容量存储器的原理

2.1 使扩展接口不占用单片机的存储地址空间

由于MCS-51单片机的扩展接口与存储器统一编址,采用常规的方法扩展接口时会占用大量的地址空间,而多数应用系统均会要求扩展接口<本例有七段LED的段输出口、位输出口、键盘口各一个),为此,使扩展接口不占用单片机的存储地址空间对于要求大容量数据存储器的系统是必要的。

如图1,用P1口的一位,只要确保写数据到显示的段口时,使用一空余<或专门预留)的地址<如0000H),即可使扩展接口不占用单片机的存储地址空间且不会相互干扰、发生冲突,同时还可保证有足够的响应速度。b5E2RGbCAP

2.2 外部数据存储采用大容量存贮芯片,分段使用

如图示,MCS-51的16位地址线作为存储芯片的低位地址,可访问64K 的存储空间(作为一段>;再用P1口的D1、D0位作为存储芯片的高位地址<段地址),则可把存储器分为4段,最大访问能力可达256K<见下表),若使用更多的位,则访问能力可更大。编程时只要确保高位地址

3 编程实现

3.1 访问扩展接口

...

CLR P1.7

MOV DPTR,#0000H ;专门预留的一个地址MOV A,#DATA1

MOVX @DPTR,A ;数据输出到显示的段口SETB

P1.7

MOV A,#DATA2MOVX@DPTR,A ;数据输出到显示的位口 ...DXDiTa9E3d

SETB P1.7

MOV DPTR,#0000H ;专门预留的一个单元地址

MOVX A,@DPTR ;读键盘口数据到ACC

...

3.2 访问存储器

程序中要访问存储器时,只需按如下顺序编写程序即可:设定片选

例:

...

CLR P3.0 ;使存储芯片的片选有效CLR P1.0

CLR P1.1 ;选取0FFFFH~00000H存储区间MO DPTR,#ADDR1 MOV A,#DATA1 ;数据写到ADDR1单元MOVX@DPTR,AMOV DPTR,#ADDR2

MOVX A,@DPTR ;读ADDR2单元的数据到A

4 结束语

使用本方法可轻易地为MCS-51单片机扩展大容量的数据存储器,这对于数据量大的数据采集系统有着非常大的意义。

5PCzVD7HxA

申明:

所有资料为本人收集整理,仅限个人学习使用,勿做商业用途。

相关文档
最新文档