单片机外部存储器扩展.ppt

  1. 1、本文档共113页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(1)地址总线(Address Bus,AB):用于传送单片机发出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器单元的选择。 (2)数据总线(Data Bus,DB):用于单片机与外部存储器之间或与I/O接口之间传送数据,数据总线是双向的。 (3)控制总线(Control Bus,CB):控制总线是单片机发出的各种控制信号线。 位地址线,“片选”都是使用高位地址线。实际上,16条地址线中的高、低位地址线的数目并不是固定的,只是习惯上把用于 “单元选择”的地址线,都称为低位地址线,其余的为高位地址线。 常用的存储器地址空间分配方法有两种:线性选择法(简称线选法)和地址译码法(简称译码法),下面介绍。 1.线选法 是直接利用系统的某一高位地址线作为存储器芯片(或I/O接口芯片)的“片选”控制信号。为此,只需要把用到的高位地址线与存储器芯片的“片选”端直接连接即可。 围为0000H~7FFFH。如果去掉图8-6中的非门,地址范围为8000H~FFFFH。把译码器的输出连到各个4KB存储器的片选端,这样就把32KB空间划分为8个4KB空间。P2.3~P2.0,P0.7~P0.0实现“单元选择”,P2.6~P2.4通过74LS138译码实现对各存储器芯片的片选。 采用译码器划分的地址空间块都是相等的,如果将地址空间块划分为不等的块,可采用可编程逻辑器件FPGA对其编程来代替译码器进行非线性译码。 :数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。 8.3 程序存储器EPROM的扩展 程序存储器采用只读存储器,因为这种存储器在电源关断后,仍能保存程序(我们称此特性为非易失性的),在系统上电后,CPU可取出这些指令重新执行。 (4)编程校验方式。VPP端保持相应的编程电压(高压),再按读出方式操作,读出固化好的内容,校验写入内容是否正确。 (5)编程禁止方式。 8.3.2 程序存储器的操作时序 1.访问程序存储器的控制信号 AT89S51单片机访问片外扩展的程序存储器时,所用的控制信号有以下3种。 (1)ALE:用于低8位地址锁存控制。 (2) :片外程序存储器“读选通”控制信号。它接外扩EPROM的 引脚。 由图8-12(b)可以看出: (1)将ALE用作定时脉冲输出时,执行一次MOVX指令就会丢失一个ALE脉冲; (2)只有在执行MOVX指令时的第二个机器周期中,才对数据存储器(或I/O)读/写,地址总线才由数据存储器使用。 8.3.3 AT89S51单片机与EPROM的接口电路设计 由于AT89S5x单片机片内集成不同容量的Flash ROM,可根据实际需要来决定是否外部扩展EPROM。当应用程序不大于单片机片内的Flash ROM容量时,扩展外部程序存储器的工作可省略。 8.4.2 外扩数据存储器的读写操作时序 对片外RAM读和写两种操作时序的基本过程相同。 1.读片外RAM操作时序 若外扩一片RAM,应将 脚与RAM的 脚连接, 脚与芯片 脚连接。 (⑤处), 信号使被寻址的片外RAM过片刻后把数据送上P0口总线(⑥处),当 回到高电平后(⑦处),P0总线变悬浮状态(⑧处)。 2.写片外RAM操作时序 向片外RAM写数据,单片机执行“MOVX @DPTR,A”指令。 指令执行后,AT89S51的 信号为低有效,此信号使RAM的 端被选通。 写片外RAM的时序如图8-17所示。开始的过程与读过程类似,但写的过程是CPU主动把数据送上P0口总线,故在时序上,CPU先向P0口总线上送完8位地址后,在S3状态就将数据送到P0口总线(③处)。此间,P0总线上不会出现高阻悬浮现象。 RAM读数据或写数据 、 、 3个信号是在执行指令时产生的,任意时刻只能执行一条指令,所以只能有一个信号有效,不可能同时有效,所以不会发生数据冲突。 (2)各芯片地址空间分配 硬件电路一旦确定,各芯片的地址范围实际上就已经确定,编程时只要给出所选择芯片的地址,就能对该芯片进行访问。结合图8-20,介绍IC1、IC2、IC3、IC4芯片地址范围的确定方法。 存储器地址均用16位,P0口确定低8位,P2口确定高8位。 如果P2.6=0、P2.5=1,选中IC2、IC4。地址线A15~A0与P2、P0对应关系如下: MOV DPTR,#6000H MOVX A,@DPTR MOV 50H,A 向片外数据区写数据的过程与读数据的过程类似

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档