土木在线论坛 \ 电气工程 \ 工业自动化 \ 51单片机相关周期种类介绍

51单片机相关周期种类介绍

发布于:2012-11-07 17:18:07 来自:电气工程/工业自动化 [复制转发]
首先明确几个概念:时钟周期、振荡周期、状态周期、机器周期、指令周期
  1、时钟周期,也称为振荡周期:定义为时钟脉冲的倒数,在单片机中也就等于晶振的倒数。
  51单片机中把一个时钟周期定义为一个节拍(用P表示),2个节拍定义为状态周期(用S表示)
  时钟周期是单片机中最小的时间单位。
  eg:12M晶振的单片机,时钟周期=振荡周期=1/12 us。
  2、机器周期:定义为完成一项基本操作所需要的时间,称为机器周期。
  在计算机中,为了方便管理,把一条指令的执行过程分为若干个阶段,每个阶段去执行一项基本操作。
  如:取指令,存储器读,存储器写等。
  在51单片机中1个机器周期由6个状态周期组成,也就是12个时钟周期=12 x 1/12 us =1 us
  定义机器周期是因为时钟周期时间太短,根本做不了什么。
  3、指令周期:定义为执行一条指令所需的时间。
  通常,包含一个机器周期的指令称为单周期指令,比如 MOV指令,CLR指令等。
  包含两个机器周期的指令称为双周期指令。
  另外还有四周期指令。
  判断指令是单周期指令还是双周期指令,最可靠的是查指令表。我在网上找到了一个规律总结,
  此规律应按照顺序进行判断,前一条原则高于后一条(主要指2~6),按顺序检查到哪一条满足,就归属哪
  一类:
  1、MUL、DIV:仅有的4周期指令
  2、包含DPTR和PC的指令均为2周期指令
  3、所有的绝对跳转和条件转移指令,均为2周期指令
  4、所有包括A寄存器的指令,均为单周期指令
  5、位操作指令中,ANL和ORL是2周期指令
  6、所有包含立即地址的指令,除INC direct及DEC direct外,均为2周期指令
  7、剩下的均为单周期指令。
  现在,常用的单片机程序编写软件为keil,当写好程序后,我们可以通过软件调试来确定程序执行所需的时间,同时也能看到每条指令:
这个家伙什么也没有留下。。。

工业自动化

返回版块

17.92 万条内容 · 365 人订阅

猜你喜欢

阅读下一篇

PLC无线传输数据

我作过试验完全能行得通,购买两只无线路由,其中一台作为发射设定为无线网桥功能,另一台作为接收端接收发射端的数据,两台路由形成点对点的网桥就完全可以无线传输PLC的数据了。本试验在S7-300通过,效果很好。可通过我的QQ:593711187交流

回帖成功

经验值 +10