AT89S51单片机最小系统组成与存储器的扩展.doc

AT89S51单片机最小系统组成与存储器的扩展.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 AT89S51单片机最小系统组成及存储器的扩展 ??? 本章主要讲述了单片机系统的最小组成以及各种存储器电路的扩展方法,特别对GAL译码方法进行了讨论。 5.1 单片机最小系统组成 ??? 能使单片机工作的最少器件构成的系统称为单片机的最小系统。对于AT89S51单片机,由于其内部有4K可在线编程的Flash存储器,用它组成最小系统时,不需机外扩程序存储器,只要有复位电路和时钟电路即可,因此,由AT89S51单片机组成的最小系统如图5.1所示: ???????????????? ? ??? 图5.1是一个实际应用的最小系统,74HC14可以提高复位的可靠性;另外,当P0用作I/O口时,需要接10k~20k的上拉电阻。 5.2 单片机的时序 ??? 时序就是进行某种操作时,各种数据、控制信号先后出现的顺序。单片机的工作时序是个很重要的概念,了解时序是进行硬件电路设计的第一步 5.2.1 单片机取指和执行时序 ??? 运行单片机程序时,总是按照取指、译码、执行,再取指、再译码、再执行的顺序进行。为了说明CPU的时序,把12个振荡周期称为一个机器周期,2个振荡周期被称为一个状态(state),每个状态中,前一个振荡周期被称为相(Phase)1,第二个振荡周期被称为相(Phase)2,这样任何一个振荡周期都可以用SiPj(i=1~6;j=1~2)来表示。ALE信号总是在一个机器周期的S1P2、S2P1和S4P2、S5P1被激活。 ??? 单周期指令总是从S1P2开始取指,当操作码被锁存到指令寄存器时,如果是双字节指令,在同一机器周期的S4读第二个字节代码;如果是个单字节指令,在S4仍会读一次,但这次读到的内容将被忽略或丢弃。在任何情况下,指令都是在S6P2执行完毕。单周期、单字节指令和单周期、双字节指令的取指、执行过程如图5.2的(A)、(B)所示。AT89S51单片机的指令中,大多数指令都是单周期或双机器周期指令,只有乘法指令(MUL,multiply)和除法指令(DIV,divide)需要四个机器周期才能完成。 ??? 单字节双周期指令的取指、执行时序如图5.2(C)所示。共有四次取指,但只有第一次是有效的,后三次都被丢弃。在这类指令中,有一个例外,即 MOVX 指令,它的取指和执行时序如图 5.2 (D)所示,当读取和执行MOVX指令时,在第二个机器周期的没有了两次取指操作,并且,在第二个机器周期的S1P2、S2P1期间,ALE信号也不会出现。 ???????? ? ??????????????? 5.2.2 单片机访问外部存储器的时序 ??? 单片机外部的存储器可分成两种,即程序存储器和数据存储器,程序存储器一般都是只读,而数据存储器则可读、写。由于单片机系统中外部数据存储器和I/O端口是统一编址的,读、写外部数据存储器的时序和读写I/O端口的时序完全一样。 ?? AT89S51单片机片内有4k可在线编程的程序存储器,当程序超过4K时,就必须扩展外部程序存储器,AT89S51单片机最大可扩展64K的外部程序存储器。当单片机CPU从外部程序存储器取指令时,PCH(A15~A8)由P2口输出;PCL(A7~A0)由P0口输出,读取的指令代码也由P0口输入,此时,P0分时复用作地址/数据总线,为了将P0口的地址/数据信息分开,单片机同时输出一个地址锁存允许信号ALE(Address Latch Enable),用于锁存P0口的地址信息。AT89S51单片机外部程序存储器的读时序可分成两种情况,即读MOVX类指令时的情况和读其它类指令的情况,具体的时序如图5.3(a)、(b示。?????????? ??? 当读取的不是MOVX类指令时,读外部程序存储器时序如图5.3(a)所示。每一个机器周期中,地址锁存允许信号ALE两次有效,在ALE由高变低时,出现在P0口的信息总是有效地址PCL,可用外部地址锁存器将PCL锁存起来,形成地址总线的A7~A0;/PSEN(program store enable)也是每个机器周期两次有效,用于选通外部程序存储器,使指令送到P0总线上,由CPU取入;P2口输出PCH,形成地址总线的高8位,即A15~A7;P0口交替出现地址信息PCL和指令代码,即在ALE的下降沿出现地址信息,在/PSEN有效时出现的是指令代码。这种情况下,若专用功能寄存器AUXR中的DISALE位为0,ALE有效信号会以振荡器频率(的1/6)的恒定速率出现在引脚上。ALE信号,主要有两个功能,一个是用于锁存出现在P0口的PCL,另一个是用来作为外部时钟或定时脉冲。 ?????????? ??? 当读取的指令是MOVX类指令时,读外部程序存储器时序如图5.3(b)所示。MOVX类指令是单字节双周期指令,即

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档