51單片機定時器/計數(shù)器
⑶ GATE —— 門控位
GATE=0,運行只受TCON中運行控制位TR0/TR1的控制。
GATE=1,運行同時受TR0/TR1和外中斷輸入信號的雙重控制。只有當INT0/INT1=1且TR0/TR1=1,T0/T1才能運行。
TMOD字節(jié)地址89H,不能位操作,設置TMOD須用字節(jié)操作指令。
(三). 定時/計數(shù)器工作方式
⒈ 工作方式0
13位計數(shù)器,由TL0低5位和TH0高 8位組成,TL0低5位計數(shù)滿時不向TL0第6位進位,而是向TH0進位,13位計滿溢出,TF0置“1”。最大計數(shù)值213 = 8192。
初值確定:TH0=(8192-5000)/32;TL0=(8192-5000)%32;進行5ms的延時。12M晶振。
⒉ 工作方式1
16位計數(shù)器,最大計數(shù)值為216 = 65536。
初值確定:TH0=(65536-50000)/256;TL0=(65536-50000)%256;進行50ms的延時。12M晶振。
⒊ 工作方式2
8位計數(shù)器,僅用TL0計數(shù),最大計數(shù)值為28= 256,計滿溢出后,一方面使溢出標志TF0 = 1;另一方面,使原來裝在TH0中的初值裝入TL0。
優(yōu)點:定時初值可自動恢復;缺點:計數(shù)范圍小。
適用于需要重復定時,而定時范圍不大的應用場合。
初值確定:TH0=TL0=256-200進行200us的延時。12M晶振。
⒋ 工作方式3
方式3僅適用于T0,T1無方式3。
⑴ T0方式3
在方式3情況下,T0被拆成二個獨立的8位計數(shù)器TH0、TL0。
① TL0使用T0原有的控制寄存器資源:TF0,TR0,GATE,C/T,INT0,組成一個8位的定時/計數(shù)器;
② TH0借用T1的中斷溢出標志TF1,運行控制開關TR1,只能對片內(nèi)機周脈沖計數(shù),組成另一個8位定時器(不能用作計數(shù)器)。
⑵ T0方式3情況下的T1
T1由于其TF1、TR1被T0的TH0占用,計數(shù)器溢出時,只能將輸出信號送至串行口,即用作串行口波特率發(fā)生器。
(四)、定時/計數(shù)器的應用
⒈ 定時器/計數(shù)器初始化的主要內(nèi)容
(1) 選擇工作方式:通過對方式寄存器TMOD進行設置
(2) 給定時器賦初值
(3) 根據(jù)需要設置中斷控制字
(4) 啟動定時器
1. 定時器/計數(shù)器初值設定方法
(1)根據(jù)定時長短,選擇工作方式
(2)計算定時/計數(shù)初值
80C51定時/計數(shù)初值計算公式:
其中: N與工作方式有關: 方式0時,N=13;方式1時,N=16;方式2、3時,N=8。
機周時間與主振頻率有關:機周時間=12/fosc,fosc=12MHZ時,1機周=1mS; fosc=6MHZ 時,1機周=2mS。
塵埃粒子計數(shù)器相關文章:塵埃粒子計數(shù)器原理
評論