单片机存储器扩展

上传人:豆浆 文档编号:48637715 上传时间:2018-07-18 格式:PPT 页数:53 大小:1.62MB
返回 下载 相关 举报
单片机存储器扩展_第1页
第1页 / 共53页
单片机存储器扩展_第2页
第2页 / 共53页
单片机存储器扩展_第3页
第3页 / 共53页
单片机存储器扩展_第4页
第4页 / 共53页
单片机存储器扩展_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《单片机存储器扩展》由会员分享,可在线阅读,更多相关《单片机存储器扩展(53页珍藏版)》请在金锄头文库上搜索。

1、 单片机存储器扩展5.1 单片机系统扩展及结构单片机扩展的必要性1. 扩展了单片机系统的资源(主要是存储器扩 展和I/O扩展) 2. 驱动更多种类的外部设备 1)信号形式不同 2)信号电平不同3)速度差异大 单片机系统总线及总线构成 所谓总线,就是连接计算机CPU与各部件的一组 公共信号线。MCS-51使用的是并行总线结构,按功 能分为三组:地址总线,数据总线和控制总线。 MCS-51并行总线结构CPU内 部ROM内 部ROM内 部RAM定时/ 计数器并行 I/O口中断 接口串行 I/O口数据总线 地址总线控制总线1数据总线DB(Data Bus) 2地址总线AB(Address Bus) 3

2、控制总线CB(Control Bus)地址总线 AB,P0口提供(A7 A0);P2口提供(A15 A8),共16位。数据总线 DB,P0口提供(D7 D0),共8位。控制总线 CB,ALE 、 、 、 、 等。8031单片机总线引脚结构单片机总线构造 1.数据总线的构造MCS-51单片机的数据总线是由P0口提供的,由 P0口引出8位线即可作为数据总线。 2.地址总线的构造 MCS-51单片机地址总线为16根,其中高8位P2口 提供,低8位由P0提供。 注意:P0口线地址 / 数据分时复用,需用地址锁存器74LS373锁存地址。 A10 A8A7 A0D7 D0CB3.MCS-51单片机控制总

3、线构造1)RD、WR为读、写信号: 用于片外扩展数据存 贮器及I/0端口的读写选通信号,当执行外部数据存贮器 操作MOVX指令时,这两个信号分别自动生成。WR、 RD分别与扩展数据存贮器及I/0端口的WR、RD相接。2)EA为片外ROM选通信号:用于选择片内或片外程 序存贮器,当EA0时,访问片外程序存贮器。3)PSEN为外部ROM读选通信号:用于片外扩展程 序存贮器的读选通信号,执行片外程序存贮器查表指令 MOVC时,该信号自动生成。PSEN与扩展程序存贮器相 接。4)ALE为地址锁存允许:用于选通地址锁存器,通常 在P0口输出地址期间,用下降沿触发锁存器锁存低8位地 址,即ALE必须与地址

4、锁存器的触发端相连对存储器来讲控制线无非是:芯片的选通控制、读写控制。单片机与外部器件数据交换要遵循两个重要原则:一是,地址唯一性,一个单元一个地址。二是,同一时刻,CPU只能访问一个地址,即只能与一个单元交换数据。不交换时,外部器件处于锁闭状态,对总线呈浮空状态。 读 / 写:CPU向外部设备发出的读/写控制命令。EPROM:/OE /PSENSRAM: /WE /WR/OE /RD 选通:CPU与器件交换数据或信息,需先发出选通信号/CE或/CS,以便选中芯片。扩展芯片MCS-51单片机扩展芯片可以分为3类:外部程 序存贮器ROM芯片、外部数据存贮器RAM芯片以 及接口芯片。连接外部设备的

5、扩展芯片称接口芯片 ,接口芯片上的接口称外接口(相对于并行口、中 断等内部接口而言)。每个外部接口可有多个端口 ,例如数据口、状态口、控制命令口等。许多接口 芯片同内部中断接口一样可通过写入控制字实现工 作方式等的功能控制,使用灵活、扩大了应用范围 ,这些芯片称可编程接口芯片。5.2 MCS-51存储器编址技术两个层次:1. 存储器芯片的选择*编址方法:1)线选法直接以系统的地址位作为芯片的片选信号2)译码法使用译码器对系统的高位地址进行译码,以其译码输出作 为存储芯片的片选信号。常用译码芯片:74LS139(双2-4译码器)74LS138(3-8译码器)2. 芯片内部存储单元的编址由芯片内的

6、译码电路完成MCS-51存储器的地址编码SRAM6116:“16” 2K8b = 2KB 21210 = 211即6116有11根地址线。地址空间: A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0最低地址: 0 0 0 0 0 0 0 0 0 0 0 0000H 最高地址: 1 1 1 1 1 1 1 1 1 1 07FFH MCS-51单片机寻址范围:64KB 26210 = 216即16位地址线地址空间: A15A14A13A12A11A10A9A8A7A0 单片机 A10A9A8A7A0 6116 25 = 322KB上式中:“”表示0或1。即单片机地址空间中包含有3

7、2个2KB。某片6116占据的是哪 2KB不能确定地址浮动。 只有限定A15A11的取值才能确定6116在系统中的地址 范围。如,P2.6 = 0 ,选中6116的/CS线。设P2.7 P2.5 P2.4 P2.3 假定全为1则: 6116地址范围是B800H BFFFH。同理, P2.7 P2.5 P2.4 P2.3假定全为0则: 6116地址范围是 0000H 07FFH;再设P2.7选中6116 (设P26 P25 P24 P23全为1)则:地址范围是7800H 7FFFH 23 = 88KB可见:存储器芯片在系统中地址分布由两个因素决定:一是,芯片本身的地址线(与容量有关)二是,芯片选

8、通信号的获得方式。扩展存储器时,总是让单片机低位地址与存储器芯片地址线相 接;而让单片机剩余的高位地址线(在P2口)常作为片选信号 线。这种方法对SRAM、EPROM、扩展I / O芯片、外设同样适用 。 P2.5 = 0时,选中2764;“64” 8K8b = 23210 = 213A15 A14 A13 A12 A11 A0 若取P2.7 P2.6均为1;则2764在本系统内地址范围:C000H DFFFH可以。此时6116:D800H DFFFH2764:C000H DB00H若6116与2764都用A13 (P2.5)选中可否6116与2764在0800H DFFFH范围内地址重 叠,

9、这是不是违反交 换原则呢?不会!因为,6116是SRAM,2764是EPROM。除地址和选 通信号外,还有读/写控制信号起作用。RAM /WE /WR /OE /RD ROM /OE /PSEN可用来区分二器件小结:1)CPU与外设数据交换的原则是什么?2)决定存储器芯片在系统中地址范围的两个因素是什么? 5.3 MCS-51程序存储器扩展MCS-51单片机8031子系列无片内ROM,故必须 扩展片外程序存贮器才能应用,而其它子系列单片机 有片内ROM,可不必扩展片外ROM即可工作。但对 于需要大容量ROM的系统都必须扩展片外ROM。扩展ROM单元芯片与片内ROM共用一个存贮空 间,统一编址。

10、通过查表指令MOVC A,A+DPTRMOVC A,A+PC可以实现对ROM单元的读操作。一、扩展总线74LS373是有输出三态门的电平允许8D锁存器。当G (使能端)为高电平时,锁存器的数据输出端Q的状态 与数据输入端D相同(透明的)。当G端从高电平返回 到低电平时(下降沿后),输入端的数据就被锁存在锁 存器中,数据输入端D的变化不再影响Q端输出。 G QDGDDDQQQOE:G QDG QD74LS373OEGALE80C31D7 : : D0Q7 : : Q0P2P0ABDB二、片外ROM操作时时序 进进行ROM的扩扩展,其扩扩展方法较为简单较为简单 容易, 这这是由单单片机的优优良扩扩

11、展性能决定的。单单片机的地 址总线为总线为 16位,扩扩展的片外ROM的最大容量为为 64KB,地址为为0000HFFFFH。扩扩展的片外RAM 的最大容量也为为64KB,地址为为0000HFFFFH。由于80C51采用不同的控制信号和指令 ,尽管 ROM与RAM的地址是重叠的,也不会发发生混乱。80C51对对片内和片外ROM的访问访问 使用相同的指令 ,两者的选择选择 是由硬件实现实现 的。 芯片选择现选择现 在多采用线选线选 法,地址译码译码 法用的渐渐 少。ROM与RAM共享数据总线总线 和地址总线总线 。访问片外ROM的时序 :80C51系列单片机的CPU在访问片外ROM的一个机器周期

12、内 ,信号ALE出现两次(正脉冲),ROM选通信号也两次有效 ,这说明在一个机器周期内,CPU两次访问片外ROM,也即 在一个机器周期内可以处理两个字节的指令代码,所以在 80C51系列单片机指令系统中有很多单周期双字节指令。 三、ROM芯片及扩扩展方法 1、EPROM存储储器及扩扩展常用的芯片有2732、2764、27128、27256、27512等 。1 2 3 4 5 6 7 8 9 10 11 12 13 1428 27 26 25 24 23 22 21 20 19 18 17 16 152764 27128 27256 275122764Vcc PGM NC A8 A9 A11 O

13、E A10 CE Q7 Q6 Q5 Q4 Q327128Vcc PGM A13 A8 A9 A11 OE A10 CE Q7 Q6 Q5 Q4 Q327256Vcc A14 A13 A8 A9 A11 OE A10 CE Q7 Q6 Q5 Q4 Q327512Vcc A14 A13 A8 A9 A11 OE/Vpp A10 CE Q7 Q6 Q5 Q4 Q32764Vpp A12 A7 A6 A4 A4 A3 A2 A1 A0 Q0 Q1 Q2 GND27256Vpp A12 A7 A6 A4 A4 A3 A2 A1 A0 Q0 Q1 Q2 GND27128Vpp A12 A7 A6 A4 A

14、4 A3 A2 A1 A0 Q0 Q1 Q2 GND27512A15 A12 A7 A6 A4 A4 A3 A2 A1 A0 Q0 Q1 Q2 GND程序存贮器芯片2716结构 2716的结构逻辑图如图所 示。ROM芯片内部集成了 输出缓冲器,地址译码器。 2716有2K字节容量,共有11 位地址线。 OECE/PGM地址输入地址译码输出 缓冲器16K位 存储矩阵 数据输出2716信号引脚说明如下:A0A10为11位地址线O0O7 为8位数据线CE/PGM为双重功能控制线0E 为输出允许信号VPP为电源线Vcc为主电源线,接+5V电源GND为地线27162716信号引脚图程序存贮器芯片工作方式

15、EPROM有下以几种工作方式,由OE、CE/PGM及 VPP各信号状态组合确定。 引 脚 方式 CE/PGM OE VPP O7O0 读出 未选中 编程 程序检验 编程禁止低 高 正脉冲 低 低低 高 低 高+5V +5V +25V +25V +25V程序读出 高阻 程序写入 程序读出 高阻(1)读出方式 CPU从EPROM中读取代码,为单片机应用系统的工作方式。此时CE、OE均 为低电平,VPP5V(2)维持方式 即未选中状态,此时CE为高电平,数据输出为高阻状态,功耗下降75,处 于低功率维持状态(3)编程方式 把程序代码固化到EPROM中。VPP端加+25V高压,OE高电平。每当CE/PGM 端出现脉冲时,写入一个存贮单元信息。(4)编程校验方式 即检查编程写入的信息是否正确,通常紧跟编程之后。VPP+25V,CE及OE 为低电平。(5)编程禁止方式2716不但可单片编程,也允

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号