c52单片机 第三个定时器T2 ,tmod里的t2相关位怎么设置?

如题所述

T2CON(T2的控制寄存器),字节地址0x0C8H:符号

TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RT2
各位的定义如下:

TF2:定时/计数器2溢出标志,
T2溢出时置位,并申请中断。只能用软件清除,但T2作为波特率发生器使用的时候,(即
RCLK=1或TCLK=1),T2溢出时不对TF2置位。

EXF2:当EXEN2=1时,且T2EX引脚(P1.0)出现负跳变而造成T2的捕获或重装的时候,EXF2置位并申请中断。EXF2也是只能通过软件来清除的

RCLK:串行接收时钟标志,只能通过软件的置位或清除;用来选择T1(RCLK=0)还是T2(RCLK=1)来作为串行接收的波特率产生器

TCLK:串行发送时钟标志,只能通过软件的置位或清除;用来选择T1(TCLK=0)还是T2
(TCLK=1)来作为串行发送的波特率产生器

EXEN2:T2的外部允许标志,只能通过软件的置位或清除;EXEN2=0:禁止外部时钟触发T2;
EXEN2=1:当T2未用作串行波特率发生器时,允许外部时钟触发T2,当T2EX引脚输入一个负跳变的时候,将引起T2的捕获或重装,并置位EXF2,申请中断。

TR2:T2的启动控制标志;TR2=0:停止T2;TR2=1:启动T2

C/T2:T2的定时方式或计数方式选择位。只能通过软件的置位或清除;C/T2=0:选择T2为定时器方式;C/T2=1:选择T2为计数器方式,下降沿触发。

CP/RT2:捕获/重装载标志,只能通过软件的置位或清除。CP/RT2=0时,选择重装载方式,这时若T2溢出(EXEN2=0时)或者T2EX引脚(P1.0)出现负跳变(EXEN2=1时),将会引起T2重装载;CP/RT2=1时,选择捕获方式,这时若T2EX引脚(P1.0)出现负跳变(EXEN2=1时),将会引起T2捕获操作。但是如果RCLK=1或TCLK=1时,CP/RT2控制位不起作用的,被强制工作于定时器溢出自动重装载模式。

T2MOD(方式寄存器),字节地址0C9H:

D7 D6 D5 D4 D3 D2 D1 D0

-- -- -- -- -- -- T2OE DCEN

T2OE:T2输出允许位,当T2OE=1的时候,允许时钟输出到P1.0。
DCEN:向下计数允许位。DCEN=1是允许T2向下计数,否则向上计数。

T2的数据寄存器TH2、TL2和T0、T1的用法一样,而捕获寄存器RCAP2H、RCAP2L只是在捕获方式下,产生捕获操作时自动保存TH2、TL2的值。

以上是T2的相关寄存器的描述,其实用法上跟T0、T1是差不多的,只是功能增强了,设置的东西多了而已。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-27
需要帮你写吗追问

不是,就是T1 T0计数器tmod直接就是 0x11 不就行了吗。那t2的tmod在哪里?

追答

丘上说吧

第2个回答  2014-11-29
相似回答