MCS-51單片機(jī)定時(shí)系統(tǒng)
程序1中,點(diǎn)亮一組燈后,調(diào)用延時(shí)子程序,延時(shí)子程序結(jié)束后再點(diǎn)亮另一組燈,循環(huán)進(jìn)行,單片機(jī)除能交替點(diǎn)亮兩組燈以外,全部時(shí)間都在運(yùn)行延時(shí)子程序,別的什么事件都不能做了。程序2中,單片機(jī)絕大部分時(shí)間都在做其它事,只在定時(shí)到1秒鐘時(shí)改變燈的工作狀態(tài),充分發(fā)揮了單片機(jī)的功能。因此,在實(shí)際應(yīng)用中,“延時(shí)”只適用于特定的場(chǎng)合,而“定時(shí)”是靈活多變的。
二、定時(shí)器的結(jié)構(gòu)
初學(xué)者不必去深入研究單片機(jī)的內(nèi)部硬件電路,只要掌握單片機(jī)的使用方法,通過(guò)實(shí)際編程,充分發(fā)揮單片機(jī)的特定功能即可。與定時(shí)器有關(guān)的特殊功能寄存器之間的信號(hào)關(guān)系示于圖1。圖中,TLO、THO、TL1、TH1以及 TMOD和TCON都是單片機(jī)的特殊功能寄存器。TLO和THO組成16位的定時(shí)/計(jì)數(shù)器(T0),TL1和TH1組成16位的定時(shí)/計(jì)數(shù)器(T1), TMOD是T0和T1的工作方式控制寄存器,TCON是T0和T1的運(yùn)行狀態(tài)控制寄存器,這些寄存器在程序2中已多次出現(xiàn)。在實(shí)際應(yīng)用時(shí),應(yīng)首先根據(jù)需要對(duì)這些寄存器進(jìn)行初始化,即設(shè)置T0和T1的工作方式并對(duì)T0和T1定時(shí)器裝入初始值以得到精確的定時(shí)時(shí)間。T0和T1的工作方式及運(yùn)行狀態(tài)是由TMOD 和TCON兩個(gè)特殊功能寄存器控制的,而TMOD和TCON是由用戶所編的程序控制的。因此,學(xué)好用好定時(shí)/計(jì)數(shù)器必須掌握這些寄存器的功能及使用方法。
三、TMOD
TMOD是定時(shí)器的工作方式控制寄存器,其格式見(jiàn)表1。
表1 定時(shí)器工作方式寄存器格式
TMOD是8位的控制寄存器,低4位控制T0的工作方式,高4位控制T1的工作方式,其中:
M1、M0是工作方式選擇位。決定定時(shí)器的4種工作方式。
方式0:(M1=0、M0=0):13位定時(shí)/計(jì)數(shù)器
方式1:(M1=0、M0=1):16位定時(shí)/計(jì)數(shù)器
方式2:(M1=1、M0=0):8位定時(shí)/計(jì)數(shù)器(定時(shí)常數(shù)自動(dòng)裝入)
方式3:(M1=1、M0=1):把T0分為兩個(gè)8位計(jì)數(shù)器
C/T:定時(shí)/計(jì)數(shù)方式選擇位
C/T =0時(shí)為定時(shí)工作方式,在此方式下,計(jì)數(shù)脈沖來(lái)自單片機(jī)內(nèi)部,計(jì)數(shù)脈沖頻率為一個(gè)機(jī)器周期,機(jī)器周期的時(shí)間是固定的,所以就可根據(jù)計(jì)數(shù)值算出計(jì)數(shù)時(shí)間。如程序2中,TL0初值為6,256-6=250,當(dāng)計(jì)數(shù)器計(jì)250個(gè)脈沖后,計(jì)數(shù)器溢出。當(dāng)fc=6MHz時(shí),一個(gè)機(jī)器周期為2μs,因此T0溢出時(shí),時(shí)間為500μs,T0定時(shí)時(shí)間為500μs。
C/T=1時(shí)為計(jì)數(shù)工作方式,在這種方式下,計(jì)數(shù)脈沖來(lái)自外部引腳(T0對(duì)應(yīng)P34腳,T1對(duì)應(yīng)P35腳)。當(dāng)T0腳(或T1腳)發(fā)生從高電平到低電平的跳變時(shí),計(jì)數(shù)器加1。
GATE:計(jì)數(shù)器工作方式控制位,當(dāng)定時(shí) / 計(jì)數(shù)器工作在計(jì)數(shù)方式時(shí),由GATE設(shè)定計(jì)數(shù)器是否受外部控制。當(dāng)GATE=0時(shí),不受外部控制。當(dāng)GATE=1時(shí),計(jì)數(shù)器T0和T1分別受P32和 P33腳上電平控制。當(dāng)P32(或P33)腳為低電平時(shí),計(jì)數(shù)器T0(或T1)開(kāi)始計(jì)數(shù),P32(或P33)腳為高電平時(shí),T0(或T1)停止計(jì)數(shù)。
評(píng)論