AT89S52單片機(jī)定時(shí)器/計(jì)數(shù)器的工作方式
本文主要就這四種工作方式展開(kāi)討論,分別從其邏輯結(jié)構(gòu)的角度來(lái)學(xué)習(xí)和了解各個(gè)工作方式的特點(diǎn)和應(yīng)用方法。其中特別需要注意的是:
1.定時(shí)器初值的計(jì)算和設(shè)定方法。
2.幾種工作方式之間的區(qū)別。
一、定時(shí)器/計(jì)數(shù)器的初始化
使用定時(shí)/計(jì)數(shù)器前需要對(duì)其進(jìn)行初始化,使其按設(shè)定的功能工作。初始化的一般步驟如下:
(1) 確定工作方式(即對(duì)TMOD賦值)。
(2) 預(yù)置定時(shí)或計(jì)數(shù)的初值(可直接將初值寫入TH0、TL0或TH1、TL1)。
(3) 根據(jù)需要開(kāi)放定時(shí)器/計(jì)數(shù)器的中斷。
(4) 啟動(dòng)定時(shí)器/計(jì)數(shù)器。
二、4種工作方式1.工作方式0:13位定時(shí)器/計(jì)數(shù)器
當(dāng)M1M0=00時(shí),定時(shí)/計(jì)數(shù)器處于工作方式0。其電路邏輯結(jié)構(gòu)見(jiàn)圖1。工作方式0是13位計(jì)數(shù)結(jié)構(gòu)的工作方式,其計(jì)數(shù)器由TH的全部8位和TL的低5位構(gòu)成,TL的高3位沒(méi)有使用。以定時(shí)器0為例,當(dāng)C/=0時(shí),多路開(kāi)關(guān)接通振蕩脈沖的12分頻輸出,13位計(jì)數(shù)器以此進(jìn)行計(jì)數(shù),這就是定時(shí)工作方式。當(dāng)C/=1時(shí),多路開(kāi)關(guān)接通計(jì)數(shù)引腳(T0),外部計(jì)數(shù)脈沖由引腳T0輸入,當(dāng)計(jì)數(shù)脈沖發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加1,這就是計(jì)數(shù)工作方式。
圖1 定時(shí)/計(jì)數(shù)器0工作方式0邏輯結(jié)構(gòu)
在方式0下,當(dāng)為計(jì)數(shù)工作方式時(shí),計(jì)數(shù)值的范圍是: 1~8192(213);當(dāng)為定時(shí)工作方式時(shí),定時(shí)時(shí)間的計(jì)算公式為:
(213-計(jì)數(shù)初值)×機(jī)器周期
2.工作方式1:16位的定時(shí)/計(jì)數(shù)器
當(dāng)M1M0=01時(shí),定時(shí)/計(jì)數(shù)器處于工作方式1。此時(shí),定時(shí)/計(jì)數(shù)器為16位計(jì)數(shù)結(jié)構(gòu)的工作方式。等效電路如圖2所示,仍以定時(shí)器0為例。
圖2 定時(shí)器/計(jì)數(shù)器0工作方式1邏輯結(jié)構(gòu)
在工作方式1下,計(jì)數(shù)器的計(jì)數(shù)值范圍是: 1~65536(216)
當(dāng)為定時(shí)工作方式1時(shí),定時(shí)時(shí)間的計(jì)算公式為:
(216-計(jì)數(shù)初值)×機(jī)器周期
3.工作方式2—8位自動(dòng)重裝的定時(shí)/計(jì)數(shù)器
當(dāng)M1M0=10時(shí),定時(shí)/計(jì)數(shù)器處于工作方式2。以定時(shí)/計(jì)數(shù)器0為例,此時(shí)定時(shí)器的等效電路如圖3所示,構(gòu)成自動(dòng)重新裝入計(jì)數(shù)初值。
圖3 定時(shí)/計(jì)數(shù)器工作方式2等效電路
工作方式2中,16位計(jì)數(shù)器分為兩部分,TLx為8位加1計(jì)數(shù)器,THx為8位初值暫存器,即以TL0為計(jì)數(shù)器,以TH0作為預(yù)置寄存器。初始化時(shí)把計(jì)數(shù)初值分別加載至TL0和TH0中,當(dāng)計(jì)數(shù)溢出時(shí),由預(yù)置寄存器TH以硬件方法自動(dòng)給計(jì)數(shù)器TL0重新加載,這種工作方式適合于重復(fù)計(jì)數(shù)的應(yīng)用場(chǎng)合。
在工作方式2下,計(jì)數(shù)器的計(jì)數(shù)值范圍是:1~256(28)
當(dāng)定時(shí)器工作在方式2時(shí),定時(shí)時(shí)間的計(jì)算公式為:
(28-計(jì)數(shù)初值)×機(jī)器周期
4.工作方式3
當(dāng)M1M0=11時(shí),定時(shí)/計(jì)數(shù)器處于工作方式3,此時(shí)定時(shí)器的等效電路如圖4所示。在工作方式3模式下,定時(shí)/計(jì)數(shù)器1的工作方式與之不同。方式3對(duì)定時(shí)器T0和定時(shí)器T1是不相同的。若T1設(shè)置為方式3,則停止工作(其效果與TR1=0相同)。所以方式3只適用于T0。
圖4 定時(shí)/計(jì)數(shù)器工作方式3等效電路 當(dāng)T0工作在方式3時(shí),TH0和TL0分成2個(gè)獨(dú)立的8位計(jì)數(shù)器。其中,TL0既可用作定時(shí)器,又可用作計(jì)數(shù)器,并使用原T0的所有控制位及其定時(shí)器中斷標(biāo)志和中斷源。TH0只能用作定時(shí)器,并使用T1的控制位TR1、中斷標(biāo)志TF1和中斷源。
編輯:admin 最后修改時(shí)間:2018-05-08