TCON

TCON的作用是控制定時器的啟、停,標誌定時器溢出和中斷情況。TCON在特殊功能暫存器中,位元組地址為88H,由於有位地址,十分便於進行位操作。當定時器1計滿溢出時,由硬體使TF1置“1”,並且申請中斷。由於TCON是可以位定址的,因而如果只清溢出或啟動定時器工作,可以用位操作命令。

簡介

附圖說明附圖說明

TCON(Timer Control Register)定時器/計數器控制暫存器

TCON在特殊功能暫存器中,位元組地址為88H,由於有位地址,十分便於進行位操作。

TCON的作用是控制定時器的啟、停,標誌定時器溢出和中斷情況。

TCON的格式如下圖所示。其中,TF1,TR1,TF0和TR0位用於定時器/計數器;IE1,IT1,IE0和IT0位用於中斷系統。

各位定義如下:

TF1:定時器1溢出標誌位。當定時器1計滿溢出時,由硬體使TF1置“1”,並且申請中斷。進入中斷服務程式後,由硬體自動清“0”,在查詢方式下用軟體清“0”。

TR1:定時器1運行控制位。由軟體清“0”關閉定時器1。當GATE=1,且/INT1為高電平時,TR1置“1”啟動定時器1;當GATE=0,TR1置“1”啟動定時器1。

TF0:定時器0溢出標誌。其功能及操作情況同TF1。

TR0:定時器0運行控制位。其功能及操作情況同TR1。

IE1:外部中斷1請求標誌位。

IT1:外部中斷1觸發方式選擇位。當IT1=0,為低電平觸發方式;當IT1=1,為下降沿觸發方式。

IE0:外部中斷0請求標誌位。

IT0:外部中斷0觸發方式選擇位。 當IT0=0,為低電平觸發方式;當IT0=1,為下降沿觸發方式。

TCON中低4位與中斷有關。由於TCON是可以位定址的,因而如果只清溢出或啟動定時器工作,可以用位操作命令。例如:執行“CLR TF0”後則清定時器0的溢出;執行“SETB TR1”後可啟動定時器1開始工作(當然前面還要設定方式定)。

定時器/計數器的初始化

由於定時器/計數器的功能是由軟體編程確定的,所以一般在使用定時/計數器前都要對其進行初始化,使其按設定的功能工作。初始化的步驟一般如下:

1、確定工作方式(即對TMOD賦值);

2、預置定時或計數的初值(可直接將初值寫入TH0、TL0或TH1、TL1);

3、根據需要開放定時器/計數器的中斷(直接對IE位賦值);

4、啟動定時器/計數器(若已規定用軟體啟動,則可把TR0或TR1置“1”;若已規定由外中斷引腳電平啟動,則需給外引腳步加啟動電平。當實現了啟動要求後,定時器即按規定的工作方式和初值開始計數或定時)。

下面介紹一下確定定時器/計數器初值的具體方法。

因為在不同工作方式下計數器位數不同,因而最大計數值也不同。

現假設最大計數值為M,那么各方式下的

最大值M值如下:

方式0:M=2 *13=8 192

方式1:M=2*16=65 536

方式2:M=2*8=256

方式3:定時器0分成兩個8位計數器,所以兩個M均為256。

因為定時器/計數器是作“加1”計數,並在計數滿溢出時產生中斷,因此初值X可以這樣計算:

在計數方式下:X=M-計數值

在定時方式下:X=M-定時值/機器周期

相關詞條

相關搜尋

熱門詞條

聯絡我們