1、5-2 程序存储器的扩展程序存储器的扩展5-3 数据存储器的扩展数据存储器的扩展5-4 简单简单 IO口的扩展口的扩展第第 5章章 单片机的并行扩展单片机的并行扩展5-5 扩展可编程扩展可编程 IO口口 8255A5-6 小结小结5-1 并行三总线的产生并行三总线的产生5-1 并行三总线的产并行三总线的产生生外扩展是构建单片机系统的重要内容 , 有两类外扩展:存储器扩展 和 I/O扩展 ;有两种外扩展方法: 并行扩展和串行扩展。单片机芯片内具有 CPU、 ROM、 RAM、 定时器 / 计数器及 I / O口。但在实际应用中、大多数情况下仅靠片内资源是不够的。 资源性扩展: 包括 存储器扩展和
2、 I O扩展 。如何扩展 ?扩展功能如何实现 ?扩展部件如何连接 ?5-1-1 片外三总线结构片外三总线结构图 1 单片机并行扩展系统结构图图 2、 89C51扩展的三总线结构 1.地址总线:地址总线( Address Bus,AB用于传送单片机送出的地址信号,以便进行存储器单元和 I/O端口的选择。地址总线是单向的,只能由单片机向外发送信息。地址总线的数目决定了可直接访问的存储单元的数目。 2.数据总线:数据总线( Data Bus, DB)用于单片机与存储器或 I/O端口之间的数据传送。一般数据总线的位数与 CPU的字长一致, MCS-51单片机的数据总线是 8位的。数据总线是双向的,可以
3、进行两个方向的数据传送。3.控制总线:控制总线( Control Bus, CB)是单片机发出的以控制片外ROM、 RAM和 I/O口读 /写操作的一组控制线。5-1-2 系统扩展的实现系统扩展的实现1. 以 P0口作低 8位地址及 8位数据的复用总线复用,即一段时间内作两种或两种以上用途。在这里指 P0口在每个 CPU的机器周期的前半个周期输出低 8位地址,由地址锁存器锁存,然后由地址锁存器代替 P0口输出低 8位地址。后半个机器周期进行 8位数据的输入输出。2. 以 P2口作为高 8位的地址总线P0口的低 8位地址加上 P2的高 8位地址就可以形成 16位的地址总线,达到 64KB的寻址能
4、力。但实际应用中,往往不需要扩展那么多地址,扩展多少用多少根线, P2口高位剩余的口线仍可作一般 I/O口来使用。3. 控制信号线ALE: 地址锁存信号,用以实现对低 8位地址的锁存。 PSEN: 片外程序存储器读选通信号。EA: 程序存储器选择信号。为低电平时,访问外部程序存储器;为高电平时,访问内外程序存储器( CPU复位先访问内部 0号地址单元,然后根据 PC指针的值访问内或外部程序存储器)。WR: 片外数据存储器写选通信号。RD: 片外数据存储器读选通信号。5-2 程序存储器的扩展程序存储器的扩展1. 存储器与微型机三总线的连接(1) 存储器数据线 D0 n连接 CPU数据总线 DB0
5、 n (2) 存储器地址线 A0 N连接 CPU地址总线低位 AB0 N。(3) 存储器片选线 CS连接 CPU地址总线高位 ABN+1。 (4) 存储器读写线 OE、WE(R/ W) 连接 CPU读写控制线 RD、WR。5-2-1 存储器的连接存储器的连接图 3、微机与存储器连接 2. 存储器与单片机的连接单片机采用复用总线结构:数据与地址分时共用一组总线。当地址出现时需要锁存器锁存地址。 图 4、单片机与存储器连接 图 5、单片机访问存储器时序 地址锁存器: 74LS373、 828274LS373和 Intel的 8282具有相同的锁存功能 图 6、 74LS373、 8282的引脚5-2-2 扩展存储器概念扩展存储器概念1. 地址线的译码1)线选法直接以系统的地址线作为存储器芯片的片选信号,为此只需把用到的地址线与存储器芯片的片选端直接相连即可。2)译码法 使用地址译码器对系统的片外地址进行译码,以其译码输出作为存储器芯片的片选信号。译码法又分为完全译码和部分译码两种。