052定时器T2的用法.docVIP

  • 3
  • 0
  • 约3.63千字
  • 约 7页
  • 2017-09-08 发布于湖北
  • 举报
《铁机》8052定时器T2的用法

定时器T2的用法 声明,定时器T2只有52以上的芯片才有,51没有的。1 C- D- I; e# z7 i9 Y8 {: z 下载 (110.23 KB) 2011-5-16 16:33 , X- ? h- F- | f P ? 下载 (197.88 KB) 2011-5-16 16:34 1 Y ]. c: ~6 A9 T+ v+ F* ^6 j 下载 (118.87 KB) 2011-5-16 16:47 捕捉模式 在捕捉模式时,两种操作模式由T2CON中的EXEN2位选择。如果EXEN2=0,Timer2作为一个16位向上定时或计数器,当溢出时将T2CON中的TF2置1。这个标志位可以产生一个中断。如果EXEN2=1,Timer2起同样的作用,但是,外部输入端T2EX上的下降延也可以使TH2和TL2中的值捕捉到RCAP2H和RCAP2L中,另外,T2EX上的下降延可以将EXF2置1,像TF2一样,也可以产生一个中断。捕捉模式详见图5。 下载 (67.65 KB) 2011-5-16 16:47 * g W W3 r ` 自动重载模式 Timer2在指定为16为自动重载模式时可以编程为加计数或减计数,此功能由T2MOD中的DCEN位决定。DCEN=0,计数器向上计数,默认置为0,DCEN=1时,Timer2的加或减由T2EX的值决定。 H* p: |* l# t/ m1 W7 [7 t Y 下载 (70.15 KB) 2011-5-16 16:47 4 h9 b4 @, q# I图6显示Timer2在DCEN=0时自动向上计数。在这个模式时,T2CON的EXEN2为可以选择两种操作。EXEN2=0,Timer2向上计数到0FFFFH时将TF2为置1,溢出可以把RCAP2H和RCAP2L中的16为值重新加载到定时寄存器中。捕捉模式时RCAP2H和RCAP2L中的值由软件预先设定。EXEN2=1,既可以由溢出重载也可以由T2EX引脚的下降延触发重载。TF2和EXF2都可以产生中断。设置DCEN时Timer2可以向上或向下计数,如图6所示,此模式下,T2EX脚控制计数方向。T2EX如果为1,Timer2向上计数。计数器到0FFFFH时溢出并将TF2置1。溢出可以使RCAP2H和RCAP2L中的16为值重新加载到定时寄存器中。T2EX如果为0,Timer2向下计数,当TH2和TL2中的值和RCAP2H和RCAP2L相等时向下溢出。溢出使TF2置1并将0FFFFH重新加载到计时寄存器中。- s0 @5 E8 |2 N4 s 下载 (80.5 KB) 2011-5-16 16:47 4 v- y: ^# ?/ f F. q: O/ z) O8 k0 i 下载 (91.13 KB) 2011-5-16 16:47 0 ~# U N: G h* J) W x: m a7 ~ 波特率发生器 通过设置T2CON中TCLK或RCLK位选择Timer2位波特窥测发生器Timer2作为发送和接收时可以应用不同的波特率,设置TCLK或RCLK位使Timer2工作在波特率发生器模式,如图8所示。 波特率发生器模式和重载模式相似,TH2中值的溢出将使软件预设的16位寄存器值重载到计数器中。 波特率1、3模式由Timer2的溢出速率决定,由下面的等式表示 模式1、3波特率=(Timer2计数值)/16 定时器可以指定为计数或定时模式,在许多应用中,被设置成定时模式,Timer2的定时操作和波特率发生器的操作不同,作为定时器,它每机器周期(1/12个晶振周期)增加1,作为波特率发生器它每个状态时间(1/2晶振周期)增加1。波特率公式如下: 模式1、34 m1 q8 `) n* x) Z: ~2 ? z=; f晶振频率* w A: @( \7 |3 O8 s* z4 p 波特率 ( k3 @8 S1 C1 W. w) b32×(65536-RCAP2H,RCAP2L) 这里(RCAP2H,RCAP2L)是RCAP2H和RCAP2L作为16为无符号整数。 Timer2作为波特率发生器如图8,这个只有在TCLK或者RCLK=1是才有效。需要注意的是TH2的的溢出不会将TF2置1,也不会产生中断,如果这时EXEN2置1,T2EX引脚的下降延将会使TF2置1并不会引发(RCAP2H,RCAP2L)到(TH2,TL2)的重载,那样,当Timer2作为波特率发生器时,T2EX可以作为一个外部中断使用。 当Timer2在波特率发生器模式作为定时器运行时(TR1=1),TH2,TL2不能进行读写,在这种情况下,计时器每个状态时间增加1,对其读写的结果将会不正确RACAP2寄存器可以读不可以写,因为写可能引起交迭重载或者重载出错。在处理Timer2的RACA

文档评论(0)

1亿VIP精品文档

相关文档