第8讲89C51单片机.扩展存储器设计.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 89C51单片机扩展存储器的设计 8.1 系统扩展结构 AT89C51系统并行扩展结构如图8-1所示。 由图8-1可以看出,系统扩展主要包括存储器扩展和I/O接口部件扩展。 外部存储器扩展又包括程序存储器扩展和数据存储器扩展。AT89C51采用的是哈佛结构。扩展后,系统形成了两个并行的外部存储器空间。 89C51单片机采用并行总线结构,大大增加了系统的灵活性,使扩展易于实现,各扩展部件只要符合总线规范,就能很方便地接入系统。 由于系统扩展是通过总线把AT89C51与各扩展部件连接起来。因此,要进行系统扩展首先要构造系统总线。 系统总线按功能分为三组,如图8-1所示。 (1)地址总线(Adress Bus,AB) 地址总线用于传送单片机发出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器选择。地址总线是单向传输的。 (2)数据总线(Data Bus,DB) 数据总线用于在单片机与存储器之间或与I/O端口之间传送数据。数据总线是双向的,可以进行两个方向的传送。 (3)控制总线(Control Bus,CB) 控制总线实际上就是单片机发出的各种控制信号线。 下面讨论如何构造系统三总线 1.以P0口作为低8位地址/数据总线 AT89C51由于受引脚数目的限制,数据线和低8位地址线复用。 为了将它们分离出来,需要外加地址锁存器,从而构成与一般CPU相类似的片外三总线,见图8-2。 2. 以P2口的口线作为高位地址线 P2口的全部8位口线用作高位地址线,再加上P0口经地址锁存器提供的低8位地址,便形成了完整的16位地址总线(见图8-2),使寻址范围达到64KB。 3.控制信号线 除了地址线和数据线之外,还要有系统的控制总线。这些信号有的就是单片机引脚的第一功能信号,有的则是P3口第二功能信号。其中包括: (1)PSEN*信号作为外扩程序存储器的读选通控制信号。 (2)RD*和WR*信号作为外扩数据存储器和I/O接口的读、写选通控制信号。 (3)ALE信号作为低8位地址的锁存控制信号。 (4)EA*信号作为内、外程序存储器的选择控制信号。 可看出,尽管89C51单片机有4个并行的I/O口,共32条口线,但由于系统扩展的需要,真正作为数字I/O使用的,就剩下P1口和P3口的部分口线了。 8.2 地址空间分配和外部地址锁存器 8.2.1 存储器地址空间分配 如何把外部各自的64KB空间分配给各个程序存储器、数据存储器芯片,并且使程序存储器的各个芯片之间,数据存储器各芯片之间,为避免发生数据冲突,一个存储器单元对应一个地址,这就是存储器的地址空间的分配问题。 在外扩的多片存储器芯片中,AT89C51要完成这种功能,必须进行两种选择: 一是必须选中该存储器芯片(或I/O接口芯片),这称为“片选”,只有被“选中”的存储器芯片才能被AT89C51读出或写入数据。为了片选的需要,每个存储器芯片都有片选信号引脚, 二是在“片选”的基础上再选择该芯片的某一单元,称为“单元选择”。 常用的存储器地址空间分配方法有两种:线性选择法(简称线选法)和地址译码法(简称译码法),下面分别介绍。 1.线选法 直接利用系统的高位地址线作为存储器芯片(或I/O接口芯片)的“片选”控制信号。为此,只需要把用到的高位地址线与存储器芯片的“片选”端直接连接即可。 线选法的优点是电路简单,不需要另外增加地址译码器硬件电路,体积小,成本低。 缺点是可寻址的芯片数目受到限制。 另外,地址空间不连续,每个存储单元的地址不唯一,不 能充分有效地利用存储空间,这会给程序设计带来一些不便,只适用于外扩芯片数目不多的单片机系统的存储器扩展。 2.译码法 使用译码器对89C51的高位地址进行译码,将译码器的译码输出作为存储器芯片的片选信号。是最常用的地址空间分配的方法,它能有效地利用存储器空间,适用于多芯片的存储器扩展。 常用的译码器芯片有74LS138(3-8译码器)74LS139(双2-4译码器)74LS154(4-16译码器)。若全部高位地址线都参加译码,称为全译码;若仅部分高位地址线参加译码,称 为部分译码。部分译码存在着部分存储器地址空间相重叠的情况。 两种常用的译码器芯片。 (1)74LS138 74LS138是3-8译码器,有3个数据输入端,经译码产生8种状态。其引脚如图8-3所示,真值表如表8-1所示。 由表8-1可见,当译码器的输入为某一固定编码时,其输出仅有一个固定的引脚输出为低电平,其余的为高电平。而输出为低电平的引脚就作为某一存储器芯片的片选端的控制信号。 表8-1 74LS138译码器真值表 输 入 输

文档评论(0)

xina171127 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档