1. 程式人生 > >STC89c51微控制器的定時器2

STC89c51微控制器的定時器2

   定時器T2的功能比T1、T0都強大,但描述它的資料不多,可能是使用得比較少的緣故吧。它是一個16位的具有自動重灌和捕獲能力的定時/計數器,它的計數時鐘源可以是內部的機器週期,也可以是P1.0輸入的外部時鐘脈衝。T2的控制暫存器的功能描述如下:

TCON2(T2的控制暫存器),位元組地址0C8H:
位地址 0CFH 0CEH 0CDH 0CCH 0CBH 0CAH 0C9H 0C8H
符號  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控制位不起作用的,被強制工作於定時器溢位自動重灌載模式。