第8章MCS-51单片机扩長存储景的设计 8.1概述 片内的资源如不满足需要,需外扩存储器和|/功能部 件:系统扩展问题,内容主要有: (1)外部存储器的扩展(外部存储器又分为外部程序存 储器和外部数据存储器) (2)|/0接口部件的扩展。 本章介绍MS-51单片机如何扩展外部存储器,1/0接 口部件的扩展下一章介绍
第8章 MCS-51单片机扩展存储器的设计 8.1 概述 片内的资源如不满足需要,需外扩存储器和I/O功能部 件:系统扩展问题,内容主要有: (1)外部存储器的扩展(外部存储器又分为外部程序存 储器和外部数据存储器) (2) I/O接口部件的扩展。 本章介绍MCS – 51单片机如何扩展外部存储器,I/O接 口部件的扩展下一章介绍
系统扩展结构如下图: 地址总线(AB) MCS-51 数据总线(DB) 控制总线(CB) 数据 程序 存储器 存储器 I/O接口 I/O接口 I/O设备 I/O设备 8-1
系统扩展结构如下图:
McS-51单片机外部存储器结构:哈佛结构 McS-%6单片机的存储器结构:普林斯顿结构。 McS-51数据存储器和程序存储器的最大扩展空间各为 64KB。 系统扩展首先要构造系统总线。 8.2条统总线及总线构造 8.2.1糸统总线 按其功能通常把系统总线分为三组: 1.地址总线( Adress bus,简写AB) 2.数据总线( Data bus,简写DB) 3.控制总线( ontro|Bus,简写CB 8.2.2构造糸统总线
MCS-51单片机外部存储器结构:哈佛结构 。 MCS-96单片机的存储器结构:普林斯顿结构。 MCS-51数据存储器和程序存储器的最大扩展空间各为 64KB。 系统扩展首先要构造系统总线。 8.2 系统总线及总线构造 8.2.1 系统总线 按其功能通常把系统总线分为三组: 1.地址总线(Adress Bus,简写AB) 2.数据总线(Data Bus,简写DB) 3.控制总线(Control Bus,简写CB) 8.2.2 构造系统总线
系统扩展的首要问题: 构造系统总线,然后再往系统总线上“挂”存储器 芯片或l/0接口芯片,“挂”存储器芯片就是存储器 扩展,“挂”1/0接口芯片就是10扩展。 McS-51由于受引脚数目的限制,数据线和低8位地址线 复用。 为了将它们分离出来,需要外加地址锁存器,从而构 成与一般CPU相类似的片外三总线,见图8-2
系统扩展的首要问题: 构造系统总线,然后再往系统总线上“挂”存储器 芯片或I/O接口芯片,“挂”存储器芯片就是存储器 扩展,“挂”I/O接口芯片就是I/O扩展。 MCS-51由于受引脚数目的限制,数据线和低8位地址线 复用。 为了将它们分离出来,需要外加地址锁存器,从而构 成与一般CPU相类似的片外三总线,见图8-2
A8~A15 P2 ALe 地址总线 地址 PO 锁存器047 8051 8751 D0D7>数据总线 8031 PSEN 控制总线 RD 8-2
地址锁存器一般采用74LS373,采用74LS373的地址总 线的扩展电路如下图图8-3)。 30 Ale 20 G 32 P0.7 18D7 vc⊥19A7 P0.6 33 D6 Q6 16 A6 P0.5 34 14 D5 MCS-51 Q5/15 A5 P043 D4 04 A 4 P0.3 36 P02|/37 「38 xp>4LS373039A3 D2 Q2 6 A2 P0.1 DI O1 A1 P0.0 39 DO 00 A0 OE GND 10 8-3
地址锁存器一般采用74LS373,采用74LS373的地址总 线的扩展电路如下图(图8-3)
1.以P0口作为低8位地址/数据总线。 2.以P2口的口线作高位地址线。 3.控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN信号作为扩展程序存储器的读选通信号。 *以EA*信号作为内外程序存储器的选择控制信号。 *由RD*和WR信号作为扩展数据存储器和l/0口的 读选通、写选通信号。 尽管MCS-51有4个并行|0口,共32条口线,但由于系 统扩展需要,真正作为数据0使用的,就剩下P1 口和P3口的部分口线。 823单片机糸统的串行扩畏技术
1.以P0口作为低8位地址/数据总线。 2.以P2口的口线作高位地址线。 3.控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN*信号作为扩展程序存储器的读选通信号。 *以EA*信号作为内外程序存储器的选择控制信号。 *由RD*和WR*信号作为扩展数据存储器和I/O口的 读选通、写选通信号。 尽管MCS-51有4个并行I/O口,共32条口线,但由于系 统扩展需要,真正作为数据I/O使用的,就剩下P1 口和P3口的部分口线。 8.2.3 单片机系统的串行扩展技术
优点:串行接口器件体积小,与单片机接口时需要的 1/0口线很少(仅需3-4根),提高可靠性。 申行扩展可以减少芯片的封装引脚,降低成本,简化 了系统结构,增加了系统扩展的灵活性。为实现串 行扩展,一些公司(例如 PHILIPS和 ATMEL公司等 已经推出了非总线型单片机芯片,并且具有SP ( Seria| Periperal Inter face)三线总线和|2c 公用双总线的两种串行总线形式。与此相配套,也 推出了相应的串行外围接口芯片。 缺点:串行接口器件速度较慢 在大多数应用的场合,还是并行扩展占主导地位
优点:串行接口器件体积小,与单片机接口时需要的 I/O口线很少(仅需3-4根),提高可靠性。 串行扩展可以减少芯片的封装引脚,降低成本,简化 了系统结构,增加了系统扩展的灵活性。为实现串 行扩展,一些公司(例如PHILIPS和ATMEL公司等) 已经推出了非总线型单片机芯片,并且具有SPI (Serial Periperal Interface)三线总线和I 2C 公用双总线的两种串行总线形式。与此相配套,也 推出了相应的串行外围接口芯片。 缺点:串行接口器件速度较慢 在大多数应用的场合,还是并行扩展占主导地位
8.3读写控制、地址空间分配和外部地址锁存器 8.3.1存储器扩畏的读写控制 RAM芯片:读写控制引脚,记为0E*和*,与McS-51 的RD和WR*相连。 EPROM芯片:只能读出,故只有读出引脚,记为0E*, 该引脚与Ms-51的PSEN相连。 8.3.2存储澋地址空间分配 McS-51发出的地址是用来选择某个存储器单元进行读 与 要完成这种功能,必须进行两种选择:“片选”和 “单元选择”。 存储器空间分配除考虑地址线连接外,还讨论各存储 器芯片在整个存储空间中所占据的地址范围
8.3 读写控制、地址空间分配和外部地址锁存器 8.3.1 存储器扩展的读写控制 RAM芯片:读写控制引脚,记为OE*和WE* ,与MCS-51 的RD*和WR*相连。 EPROM芯片:只能读出,故只有读出引脚,记为OE* , 该引脚与MCS-51的PSEN*相连。 8.3.2 存储器地址空间分配 MCS-51发出的地址是用来选择某个存储器单元进行读 写, 要完成这种功能,必须进行两种选择: “片选”和 “单元选择” 。 存储器空间分配除考虑地址线连接外,还讨论各存储 器芯片在整个存储空间中所占据的地址范围
常用的存储器地址分配的方法有两种:线性选择法 (简称线选法)和地址译码法(简称译码法) 1.线选法 直接利用系统的高位地址线作为存储器芯片(或/0接 口芯片)的片选信号。 优点:电路简单,不需要地址译码器硬件,体积小, 成本低。 缺点:可寻址的器件数目受到限制,地址空间不连 续,地址不唯一。 例某一系统,需要外扩8KB的EPRM(2片2732),4KB 的RAM(2片6116),这些芯片与McS-51单片机地址 分配有关的地址线连线,电路如下图
常用的存储器地址分配的方法有两种:线性选择法 (简称线选法)和地址译码法(简称译码法)。 1. 线选法 直接利用系统的高位地址线作为存储器芯片(或I/O接 口芯片)的片选信号。 优点:电路简单,不需要地址译码器硬件,体积小, 成本低。 缺点:可寻址的器件数目受到限制,地址空间不连 续,地址不唯一。 例 某一系统,需要外扩8KB的EPROM(2片2732),4KB 的RAM(2片6116),这些芯片与MCS-51单片机地址 分配有关的地址线连线,电路如下图