单片机第9章外部存储器的应用

  • 格式:ppt
  • 大小:1.78 MB
  • 文档页数:58

下载文档原格式

  / 50
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题:假设A12~A15均为高
芯 片(1)的地址范围是? 芯 片(2)的地址范围是?
思考题
1、按下图所示,直接写出两片存储器的地址。
2.全译码方式
全译码方式是将片内寻址的地址线以外的高 位地址线,全部输入到译码器进行译码,利用译码 器的输出端作为各存储器芯片的片选信号。
常用的译码器有:
74LSl38(3/8译码器) 74LSl39(双2/4译码器) 74LSl54(4/16译码器) 这里介绍74LSl38译码器。
知识点:
三总线
RAM存储芯片及其扩展
EPROM存储芯片及其扩展 EEPROM存储芯片及其扩展
通过第2章的学习我 们知道:
单片机内部配置的存储器
单片机外部可扩充的存储器
如何扩充外部存储器是本 章要解决的问题
为解决P0口一口两用,
单造成片数机据和扩地展址混成淆三总线的结构图
的问题,常用“地址
锁存器”加以区分:
0
1
VPP
×
×
VPP
VCC
D7~D0
VCC VCC VCC VCC VCC
DOUT 高阻
DIN VOUT 高阻
2. EEPROM芯片
型号 性能
2816
存储容量/bit
2KB×8
读出时间/ns
250
读操作电压/V 5
擦/写操作电压/V 21
字节擦除时间/ms 10
写入时间/ms
10
封装
DIP24
2816A 2817 2817A 2864A
那么:该存储器的地址范围是3000H~37FFH 问题:如果要访问2716的第3210H单元,P0口和P2口分别送出的地址数据是什么?
线选方式地址分配表
二进制表示
A15 A14 A13 A12 A11 A10

0

芯片 Ⅰ
0
0
1 1 01

0

芯片 Ⅱ
0
0
1 0 11

0

芯片 Ⅲ
0
0
0 1 11
现假设剩下的两根高位地址线A14、A15都为低电平,这样可得到3个芯片 的地址分配。
高位地址
基本地址
其中:P0.0对应A0 P0.1对应A1 P0.2对应A2 …… P0.5对应A5 P0.6对应A6 P0.7对应A7 P2.0对应A8 P2.1对应A9 P2.2对应A10 …… P2.5对应A13 P2.6对应A14 P2.7对应A15

十六进制 A0
0
1
3000H~37FFH
0
1
2800H~2FFFH
0
1
1800H~1FFFH
也可以用一根高位地址线 加一“非门”,对两片存储器实 现片选,如右图所示。图中当 A1l为低电平时选通芯片(1), 当A1l为高电平时选通芯片(2)。 两芯片的地址空间为:(假设 A12~A15均为低)
芯 片 (1) 0000H~07FFH 芯 片 (2) 0800H~0FFFH
101 110 101 101 011
A112345=0
DEB7F888000000H0HHH~~~~D7EBFFF7FFFFFFHHH
不同片选2K内存地址分配表(低有效)
A15 A14 A13 A12 A11 2K内存地址范围 0000H~07FFH
1 1 1 1 0 F000H~F7FFH 1 1 1 0 1 E800H~EFFFH 1 1 0 1 1 D800H~DFFFH 1 0 1 1 1 B800H~BFFFH 0 1 1 1 1 7800H~7FFFH
下图为8031与3片EPROM连接的电路:
你能直接分别写出三块存储器的地址吗?
下图是采用译码方式对8051扩展3片2764EPROM的接口电路。图中 利用2根高位地址线P2.6和P2.7(A14和A15),经2/4译码器后,3根 译码输出线分别接到3片2764的端。
你能直接分别写出三块存储器的地址吗?
11 11 01
1 1 11 1
1
1 1 1 11
1
1
11 1 1 1
10 11 11 11 11 11 11
1
11 1 1 1
0
11 1 1 1
1
01 1 1 1
1
10
111
1
11 0
11
1 11 1
01
1 11 1
10
下面是通过74LS138译码器的 /Y0、/Y1、/Y2分别作为3片6116的片选信号
EPROM2764引脚图
其中 : CE为片选信号 OE为输出允许信号 PGM为编程信号 VP-P为编程电压 A0~A12为地址线 D0~D7为数据线
EPROM主要芯片的性能表
型号 性能
2716
2732A
2764
27128
27256
容量/bit 2KB×8
读写时间
/ns
350
封装
DIP24
4KB×8 250
扩展EEPROM程序存储器
EPROM的优点是芯片可以多次擦写使用,缺点是无论 擦除或写入需要专用设备。此外,即使是写错了一个字节, 也必须把芯片拔下来,全片擦掉之后重写,这给使用带来 了很大不便。
实际上,将整片内容全部改写的情况比较少,大多数 情况是要求以字节为单位进行改写。
例如:改写一个或几个写错的字节、修改程序中的常 数、扩充部分程序等。电擦除可编程只读存储器EEPROM能 满足这种实际需求,具有很大的优越性。它不仅能够用电 的方法进行整片擦除,还能实现以字节为单位的擦除和写 入,擦除和写入均可在线进行,其功能相当于磁盘。
DIP24
8KB×8 16KB×8 32KB×8
250
250
250
DIP28
DIP28
DIP28
2716~27256等芯片的技术性能和使用方法基本相同, 现以2764为例加以说明。工作方式见下表:
引脚
CE
工作方式
读出
0
维持
1
编程
0
程序检测
0
禁止编程
1
OE
PGM
VPP
0
1
VCC
×
×
VCC
1
编程脉冲
VPP
1
0
0
0
1
1 …1
1
0
0
1
0
0 … 0~
9000H~97FFH
1
0
0
1
0
1 …1
※表中红色为片内地址
问题:
如果按下面的方式连接,你能分别写出3块芯片的地址 范围吗?
问题: 如果按下面的方式连接,你能分别写出3块芯片的
地址范围吗?
片选方式比较:
线选方式: 优点:接口电路简单 缺点:芯片的地址空间相互之间可能不连续、地址信号
注:蓝色为基本地址
0001 0010 0010 01000 10000
AA1151234==11
2148000080000H0HH~~~2148707FFFFFFHFHH
不同片选2K内存地址分配表(高有效)
A15 A14 A13 A12 A11
00001 00010 00100 01000 10000
2K内存地址范围 0000H~07FFH 0800H~0FFFH 1000H~17FFH 2000H~27FFH 4000H~47FFH 8000H~87FFH
注:蓝色为基本地址
从以上两表中可以看出: 产生片选信号的方式不同,存储器的地址分配也 就不同。 片选方式有线选、全译码和局部译码三种。 1.线选方式 线选方式,就是把一根高位地址线直接连到存储 芯片的片选端,如下图所示。
为了便于理解我们将译码器简化成下图:
CBA
/Y
000
0
001
0
010
0
011
0
100
0
101
0
110
0
111
0
74LS138真值表
输入 允许
选择


1OE 2OE
×
1
0
×
1
0
1
0
1
0
1
0
1
0wk.baidu.com
1
0
1
0
1
0
CBA
××× ××× 000 001 010 011 100 101 110 111
YO Y1 Y2 Y3 Y4 Y5 Y6 Y7
图中芯片(1) 、(2) 、(3)都是2KB×8位存储器芯片,地址线A10~A0实现 片内寻址(基本地址),地址空间为2KB。
现用3根高位地址线A11、A12、A13实现片选,均为低电平有效。为了不出 现寻址错误,当A11,、A12、A13之中有一根地址线为低电平时,其余两根地 址线必须为高电平,也就是说每次存储器操作只能选中其中一个芯片
按能够带动几个标准TTL门电路来设计。 如果考虑了存储器和其他负载以后,总负载
超过了总线的负载能力,就要接入总线驱动器。
思考题
参照右图,直接写出8片 存储器的地址。
扩展程序存储器
常用程序存储器芯片介绍
1.EPROM芯片 常用的EPROM中 27系列芯片是Intel 公司的系列产品, 采用紫外线擦除。
EPROM与单片机的连接
注意:2732A的连接方式与RAM的连接方式基本相同,唯一区别是: 1、RAM:单片机的/RD、/WR分别接吧/OE、/WE 2、ROM:单片机的 /PSEN 接 /OE
2.扩展多片EPROM
当扩展一片EPROM不能满足要求时,可以采用扩 展多片EPROM的方法。这时所有芯片的片选端都必须适 当连接,也就是要使用片内寻址以外的高位地址线, 以线选或译码方式提供片选信号。
EEPROM已经在智能仪表、检测控制系统和微机开发装 置中得到广泛应用。
右所示为 8051扩展2816A作 为外部程序存储 器的接口电路。 图中2816A的地址 线和数据线的连 接与EPROM情况相 同。
/Y0=0时,芯片(1)被选通,即:A15=1、A14=0、A13=0、A12=0、A11=0 时才可以对芯片(1)进行读或写
/Y1=0时,芯片(2)被选通,可以进行读或写,即:A15=1、A14=0、 A13=0、A12=0、A11=1时才可以对芯片(2)进行读或写
/Y2=0时,芯片(3)被选通,可以进行读或写,即:A15=1、A14=0、 A13=0、A12=1、A11=0时才可以对芯片(3)进行读或写
片选信号与地址分配的关系
片选信号:单片机使存储芯片进入工作状态的信号。
一个存储器芯片具有一定的地址空间。
例如:11根地址线的芯片,其地址空间为2KB(211=2048个单
元)。这2KB地址空间在单片机的内存空间(如8位微处理器 有16根地址线,能寻址216=64KB)中被分配在什么位置,由 高位地址线All—A15产生的片选信号来决定(称为地址分 配)。
有重叠现象、不能充分利用微处理器的内存空间。 原因是:用作片选信号的高位地址线的信号状态得不到
充分利用。
译码方式: 优点: 存储器芯片的地址空间连续,且唯一确定。不
存在地址重叠现象,能够充分地利用内存空间。 缺点:电路连接稍复杂 原因:增加硬件开销 ※当译码器输出端留有空余时,便于继续扩展存储
器或其他外围器件。
2KB×8 200/250 5 5 9~15 9~15 DIP24
2KB×8 2KB×8 8KB×8
250
200/250 250
5
5
5
21
5
5
10
10
10
10
10
10
DIP28 DIP28 DIP28
下图为2816/2816A、2817/2817A和2864A的引脚。
注意:1、这些芯片的读出时间较短,擦除和写入时间比较长 2、型号不带“A”的是早期产品,其擦/写操作电压高于5V 3、型号带“A”的改型芯片的擦/写操作电压为5V
送低8位地址时由
ALE打开“地址锁存
器” 、送8位数据时
由ALE关闭“地址锁 存器”




线
P0口+P2口构成16位地址总线:其中: P0口低8位、P2口高8位 P0口单独构成8位数据总线 ALE、/RD、/WR、/PSEN一起构成控制总线
首先让我们认识存储器
凹槽左边为第1脚,逆时针方向2、3、4…脚 “61”为半导体数据RAM、“27”为紫外线擦除ROM、“28”为电擦除 ROM A0~A10为地址总线(“16”代表容量为2KB) D0~D7为数据总线 / WE为写信号、/OE为读信号、/CE为片选信号,合称控制总线 VCC / VDD为电源+端、GND / VSS为电源地
3.分配存储器的地址空间 根据单片机的寻址范围和系统要求: 1)分配ROM的地址空间 2)分配RAM的地址空间 3)兼顾I/O接口 4)兼顾外围设备 4.设计片选逻辑 按照地址空间: 1)确定片选信号的产生方式 2)设计其逻辑电路。
5.核算对系统总线的负载要求 单片机系统总线的负载能力是有限的,一般
扩展存储器的步骤
步骤如下:
1.确定存储器的类型和容量 根据对存储器功能的要求来确定存储器的类型: 1)如存储固定信息采用ROM 2)存储随机读写信息采用RAM 3)根据所需容量选定具体类型的存储器芯片 4)留有一定的余量。
2.选择合适的存储器芯片
选择存储器芯片时主要考虑的因素有: 1)存取时间 2)功耗 3)货源 4)价格 ※一般从常用芯片中选定,并尽量减少芯片数量。
根据译码器的逻辑关系和存储器的片内寻址范围,可以 得到3个芯片的地址空间。
芯片Ⅰ 芯片Ⅱ 芯片Ⅲ
全译码方式实现片选的地址分配表
二进制表示 A15 A14 A13 A12 A11 A10 … A0
十六进制表示
1
0
0
0
0
0 … 0~
8000H~87FFH
1
0
0
0
0
1… 1
1
0
0
0
1
0 … 0~
8800H~8FFFH