文档介绍:单片机原理与应用
第8章 AT89S51单片机外部存储器的扩展
1
2
系统扩展结构
地址空间分配和外部地址锁存器
存储器地址空间分配 外部地址锁存器
程序存储器EPROM的扩展
常用的EPROM芯片 程序存储器的操作时序
AT89S51单片机与EPROM的接口电路设计
静态数据存储器RAM的扩展
常用的静态RAM(SRAM)芯片
外扩数据存储器的读写操作时序
第8章目录
2
AT89S51单片机与RAM的接口电路设计
EPROM和RAM的综合扩展
综合扩展的硬件接口电路
外扩存储器电路的工作原理及软件设计
E2PROM的扩展
并行E2PROM芯片简介
E2PROM的工作方式
AT89S51单片机扩展E2PROM AT2864的设计
片内Flash存储器的编程
通用编程器编程
ISP编程
3
许多情况,片内的存储器资源还不能满足需要,为此需AT89S51单片机进行外部程序存储器和外部数据存储器的扩展。
由于有时需要扩展多片芯片,首先介绍AT89S51单片机的两个外部存储器空间的地址分配的两种方法,即线选法和译码法。最后介绍扩展外部程序存储器和外部数据存储器的具体设计。
内容概要
4
AT89S51单片机采用总线结构,使扩展易于实现,AT89S51单片机系统扩展结构如图8-1所示。
图8-1 AT89S51单片机的系统扩展结构
5
系统扩展结构
5
由图8-1可以看出,系统扩展主要包括存储器扩展和I/O接口部件扩展。
AT89S51单片机的存储器扩展即包括程序存储器扩展又包括数据存储器扩展。AT89S51单片机采用程序存储器空间和数据存储器空间截然分开的哈佛结构。扩展后,系统形成了两个并行的外部存储器空间。
系统扩展是以AT89S51为核心,通过总线把单片机与各扩展部件连接起来。因此,要进行系统扩展首先要构造系统总线。
系统总线按功能通常分为3组,如图8-1所示。
6
6
(1)地址总线(Address Bus,AB):用于传送单片机发出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器单元的选择。
(2)数据总线(Data Bus,DB):用于单片机与外部存储器之间或与I/O接口之间传送数据,数据总线是双向的。
(3)控制总线(Control Bus,CB):控制总线是单片机发出的各种控制信号线。
7
如何来构造系统的三总线。
AT89S51受引脚数目限制,P0口既用作低8位地址总线,又用作数据总线(分时复用),因此需增加一个8位地址锁存器。AT89S51访问外部扩展的存储器单元或I/O接口寄存器时,先发出低8位地址送地址锁存器锁存,锁存器输出作为系统的低8位地址(A7~ A0)。随后,P0口又作为数据总线口(D7~ D0),如图8-2所示。
P2口用作系统的高8位地址线,再加上地址锁存器提供的低8位地址,便形成了系统完整的16位地址总线。
8
8
9
图8-2 AT89C51单片机扩展的片外三总线
使单片机系统的寻址范围达到64KB。
9
除地址线和数据线外,还要有系统的控制总线。这些信号有的就是单片机引脚的第一功能信号,有的则是P3口第二功能信号。包括:
(1) 作为外扩程序存储器的读选通控制信号。
(2) 和为外扩数据存储器和I/O的读、写选通控制信号。
(3)ALE作为P0口发出的低8位地址锁存控制信号。
(4) 为片内、片外程序存储器的选择控制信号。
可见,AT89S51的4个并行I/O口,由于系统扩展的需要,真正作为数字I/O用,就剩下P1和P3的部分口线了。
10
10