MCS—单片机时序.pptVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MCS—单片机时序

2.4 MCS—51单片机时序 单片机时序就是CPU在执行指令时所需控制信号的时间 顺序。单片机本身就是一个复杂的同步时序电路,为了保证 同步工作方式的实现,电路应在唯一的时钟信号控制下严格 地按时序进行工作。而时序所研究的则是指令执行中各信号 之间的相互时间关系。在执行指令时,CPU首先要到程序存 储器中取出需要执行指令的指令码,然后对指令码译码,并 由时序部件产生一系列控制信号去完成指令的执行。这些控 制信号在时间上的相互关系就是CPU时序。 CPU发出的时序信号有两类:一类用于片内各功能部件 的控制。这类信号很多,但对于用户是没有意义的,故通常 不作专门介绍;另一类用于片外存储器或I/O端口的控 制,需要通过器件的控制引脚送到片外,这部分时序对于分 析硬件电路原理至关重要。 二、 MCS—51指令的取指/执指时序 单片机在程序的控制下,一步一步地完成程序 中所规定的任务。而程序是由一条条指令组成的执 行成序就意味着执行指令。 单片机执行任何一条指令时都可以分为取指令 阶段和执行指令阶段。取指令阶段简称取指阶段, 单片机在这个阶段里可以把程序计数器PC中的地址 送到程序存储器,并从中取出需要执行指令的操作 码和操作数。指令执行阶段可以对指令操作码进行 译码,以产生一系列控制信号完成指令的执行。几 种典型的单片机取指/执行指令的时序如下图示。 本次课应完成以下作业: 教材:p78的2.14、2.23题 第三章 MCS—51单片机指令系统 3.1概述(指令格式、分类、指令系统综述) 4.1.3 汇编语言构成(伪指令)3.2 寻址方式 * 一、时序定时单位 单片机执行指令是在时序电路的控制下一步一步进行的,通常以时序图的形式来表明相关信号的波形及先后次序。 MCS—51时序的定时单位共有四个,从小到大依次是:节拍、状态、机器周期和指令周期。振荡电路产生的振荡脉冲并不直接使用,而是经分频后再为系统所用,如上图所示。 振荡脉冲经过二分频后才作为系统的时钟信号(注意时钟脉冲与振荡脉冲之间的二分频关系,否则会造成概念上的错误),在二分频的基础上再三分频产生ALE信号(这就是在前面介绍ALE时所说的“ALE以晶振六分之一的固定频率输出的正脉冲”),在二分频的基础上再六分频得到机器周期信号。 1、节拍与状态 把振荡脉冲的周期定义为节拍(用“P”表示)。振荡脉冲经过二分频后,就是单片机的时钟信号,把时钟信号的周期定义为状态(用“S”表示)。这样,一个状态就包含两个拍节,其前半周期对应的节拍叫节拍1(P1),后半周期对应的节拍叫节拍2(P2)。 2、机器周期 规定一个机器周期的宽度为6个状态,并依次表示为:S1~S6。由于一个状态又包括两个节拍,因此一个机器周期总共有12个节拍,分别记作S1P1 、S1P2、……S6P12。由于一个机器周期共有12个振荡脉冲周期,因此机器周期就是振荡频率的十二分频。 3、指令周期 指令周期是最大的时序定时单位,执行一条指令所需要的时间称之为指令周期。指令周期以机器周期的数目来表示,MCS-51的指令周期根据指令的不同,可包含有一(单周期)、二(双周期)、三或四个机器周期。 指令的运算速度和指令所包含的机器周期数有关,机器周期数越少的指令执行速度越快。 例如当振荡脉冲频率为12MHz时,一个机器周期为1微秒,当振荡脉冲频率为6MHz时,一个机器周期为2微秒。 对于振荡脉冲频率为12MHz的单周期指令、双周期指令、三周期指令和四周期指令其指令的执行时间分别为: 1微秒、2微秒、3微秒和4微秒。 1.单字节单周期指令(例如INC A) 由于是单字节指令,因此只需进行一次读指令操作。当第二个ALE有效时,由干PC没有加1,所以读出的还是原指令,属于一次无效的操作。 2.双字节单周期指令(例如ADD A,#data) 这种情况下对应于ALE的两次读操作都是有效的,第一次是读指令操作码,第二次是读指令第二字节(本例中是立即数)。 3.单字节双周期指令(例如INC DPTR) 两个机器周期共进行4次读指令的操作,但其中后三次的读操作全是无效的。 4.单字节双周期(MOVX类指令) 如前述每个机器周期内有两次读指令操作,但MOVX类指令情况有所不同,因为执行这类指令时,先在ROM读取指令,然后对外部RAM进行读/写操作。第一机器周期时,与其它指令一样,第一次读指令操作码有效,第二次读指令操作无效。第二机器周期时,对外部RAM访问,不产生读指令操作。 三、访问片外ROM/RAM的指令

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档