您的位置 首页 芯闻

关于51单片机守时/计数器初值的核算

计数初值的计算定时或计数方式下计数初值如何确定,定时器选择不同的工作方式,不同的操作模式其计数值均不相同。若设最大计数值为M

计数初值的核算

  守时或计数方法下计数初值怎么确认,守时器挑选不同的作业方法,不同的操作形式其计数值均不相同。若设最大计数值为 M ,各操作形式下的 M 值为:

 
  形式 0 : M=2 13 =8192

  形式 1 : M=2 16 =65536

  形式 2 : M=2 8 =256

  形式 3 : M=256 ,守时器 T0 分红 2 个独立的 8 位计数器,所以 TH0 、 TL0 的 M 均为 256 。

  

  由于 MCS-51 的两个守时器均为加 1 计数器,当初到最大值( 00H 或 0000H )时发生溢出,将 TF 方位 1 ,可宣布溢出中止,因而计数器初值 X 的核算式为: X=M- 计数值式中的 M 由操作形式确认,不同的操作形式计数器的长不相同,故M值也不相同。而式中的计数值与守时器的作业方法有关。

  

  1 、计数作业方法时

  计数作业方法时,计数脉冲由外部引进,是对外部冲进行计数,因而计数值依据要求确认。其计数初值: X=M- 计数值

  

  例如:某工序要求对外部脉冲信号计 100 次, X=M-100

  

  2 、守时作业方法时

  守时作业方法时,由于计数脉冲由内部供应,是对机器周期进行计数,故计数脉冲频率为 f cont =f osc × 1/12 、计数周期 T=1/f cont =12/f osc 守时作业方法的计数初值 X 等于:

  

  X=M- 计数值 =M-t/T=M- ( f osc × t ) /12

  

  式中: f osc 为振动器的振动频率, t 为要求守时的时刻。

  

  守时器有两种作业方法 :即守时和计数作业方法。由 TMOD 的 D6 位和 D2 位挑选,其间 D6 位挑选 T1 的作业方法, D2 位挑选 T0 的作业方法。 =0 作业在守时方法, =1 作业在计数方法。并有四种操作形式:

  

  1 、形式 0 : 13 位计数器, TLi 只用低 5 位。

  2 、形式 1 : 16 位计数器。

  3 、形式 2 : 8 位主动重装计数器, THi 的值在计数中不变, TLi 溢出时, THi 中的值主动装入 TLi 中。

  4 、形式 3 : T0 分红 2 个独立的 8 位计数器, T1 中止计数。

  

  MCS-51 有 5 个中止源,可分为 2 个中止优先级,即高优先级和低优先级,中止天然优先级:

  

  外部中止 0 ;守时器 0 中止; 外部中止 1 ;守时器 1 中止 ;

  串行口中止 ;守时器 2 中止

  

  ( 1 )同级或高优先级的中止正在进行中;

  ( 2 )现在的机器周期还不是履行指令的最终一上机器周期,即正在履行的指令还没完结前不呼应任何中止;

  ( 3 )正在履行的是中止回来指令 RET1 或是拜访专用寄存器 IE 或 IP 的指令,换而言之,在 RETI 或许读写 IE 或 IP 之后,不会立刻呼应中止请求,至少要在履行其它一要指令之扣才会呼应。

  

  (一)中止呼应条件

  CPU 呼应中止的条件有:

  ( 1 )有中止源宣布中止请求;

  ( 2 )中止总答应位 EA=1 ,即 CPU 开中止;

  ( 3 )请求中止的中止源的中止答应位为 1 ,即没有被屏蔽。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/258251.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部