- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8讲 89C51单片机扩展存储器的设计知识讲稿.ppt
1
单片机原理与应用
大连理工大学软件学院
嵌入式系统教研室
侯刚
hg.dut@163.com
综合楼413,04112
第8章 89C51单片机扩展存储器的设计
8.1 系统扩展结构
AT89C51系统并行扩展结构如图8-1所示。
图8-1
3
由图8-1可以看出,系统扩展主要包括存储器扩展和I/O接
口部件扩展。
外部存储器扩展又包括程序存储器扩展和数据存储器扩展。
AT89C51采用的是哈佛结构。扩展后,系统形成了两个并行
的外部存储器空间。
89C51单片机采用并行总线结构,大大增加了系统的灵活
性,使扩展易于实现,各扩展部件只要符合总线规范,就
能很方便地接入系统。
由于系统扩展是通过总线把AT89C51与各扩展部件连接起
来。因此,要进行系统扩展首先要构造系统总线。
4
系统总线按功能分为三组,如图8-1所示。
(1)地址总线(Adress Bus,AB)
地址总线用于传送单片机发出的地址信号,以便进行存储单元
和I/O接口芯片中的寄存器选择。地址总线是单向传输的。
(2)数据总线(Data Bus,DB)
数据总线用于在单片机与存储器之间或与I/O端口之间传送数
据。数据总线是双向的,可以进行两个方向的传送。
(3)控制总线(Control Bus,CB)
控制总线实际上就是单片机发出的各种控制信号线。
下面讨论如何构造系统三总线
5
1.以P0口作为低8位地址/数据总线
AT89C51由于受引脚数目的限制,数据线和低8位地址线复用。
为了将它们分离出来,需要外加地址锁存器,从而构成与一般
CPU相类似的片外三总线,见图8-2。
图8-2
8
8.2 地址空间分配和外部地址锁存器
8.2.1 存储器地址空间分配
在外扩的多片存储器芯片中,AT89C51必须进行两种选择:
一是必须选中该存储器芯片(或I/O接口芯片),这称为“片
选”,只有被“选中”的存储器芯片才能被AT89C51读出或写
入数据。为了片选的需要,每个存储器芯片都有片选信号引脚;
二是在“片选”的基础上再选择该芯片的某一单元,称为“单
元选择”。
9
常用的存储器地址空间分配方法有两种:线选法和地址译
码法。
1.线选法
直接利用系统的高位地址线作为存储器芯片(或I/O接口芯
片)的“片选”控制信号。为此,只需要把用到的高位地
址线与存储器芯片的“片选”端直接连接即可。
优点是电路简单,不需要另外增加地址译码器硬件电路,
体积小,成本低。
缺点是可寻址的芯片数目受到限制,只适用于外扩芯片数
目不多的单片机系统的存储器扩展。
10
2.译码法
使用译码器对89C51的高位地址进行译码,将译码器的译码输
出作为存储器芯片的片选信号。是最常用的地址空间分配的
方法,它能有效地利用存储器空间,适用于多芯片的存储器
扩展。
常用的译码器芯片有74LS138(3-8译码器)74LS139(双2-4
译码器)74LS154(4-16译码器)。若全部高位地址线都参加
译码,称为全译码;若仅部分高位地址线参加译码,称为部
分译码。
11
(1)74LS138
74LS138是3-8译码器,有3个数据输入端,经译码产生8种状
态。其引脚如图8-3所示,真值表如表8-1所示。由表8-1可
见,当译码器的输入为某一固定编码时,其输出仅有一个固
定的引脚输出为低电平,其余的为高电平。而输出为低电平
的引脚就作为某一存储器芯片的片选端的控制信号。
图8-3
12
表8-1 74LS138译码器真值表
输 入 输 出
G1 G2A* G2B* C B A Y7* Y6* Y5* Y4* Y3* Y2* Y1* Y0*
13
(2)74LS139
74LS139是双2-4译码器。两个译码器完全独立,分别有各自的
数据输入端、译码状态输出端以及数据输入允许端。其引脚如
图8-4所示,真值表如表8-2所示(见P138)。
图8-4
表8-2
14
下面以74LS138为例,介绍如何进行地址分配。
例 要扩8片8KB的RAM 6264,如何通过74LS138把64KB空间分配给各个芯片?
64KB地址空间的分配如图8-5所示。
图8-5
15
8.2.2 外部地址锁存器
地址锁存器芯片: 74LS373、74LS573等。
1. 锁存器74LS373
带有三态门的8D锁存器,其引脚及内部结构如图8-7和图
8-8。 89C51与74LS373的连接如图8-9所示。
图8-7
图8-8
引脚说明如下:
D7~D0:8位数据输
入线。
Q7~Q0:8位数据输
文档评论(0)