片機(jī)定時(shí)器考小題大題課件_第1頁
片機(jī)定時(shí)器考小題大題課件_第2頁
片機(jī)定時(shí)器考小題大題課件_第3頁
片機(jī)定時(shí)器考小題大題課件_第4頁
片機(jī)定時(shí)器考小題大題課件_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用2 定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用n定時(shí)器定時(shí)器/計(jì)數(shù)器的應(yīng)用場合計(jì)數(shù)器的應(yīng)用場合: 定時(shí)或延時(shí)控制、對外部事件的檢測、計(jì)定時(shí)或延時(shí)控制、對外部事件的檢測、計(jì)數(shù)等數(shù)等;nMCS-51系列系列8031、8051單片機(jī)有單片機(jī)有兩個(gè)兩個(gè)16位位定時(shí)器定時(shí)器/計(jì)數(shù)器(即計(jì)數(shù)器(即T0和和T1););n8032、8052單片機(jī)有單片機(jī)有3個(gè)個(gè)16位定時(shí)器位定時(shí)器/計(jì)計(jì)數(shù)器(即數(shù)器(即T0、 T1和和T2););3定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用n所謂所謂計(jì)數(shù)器計(jì)數(shù)器就是就是對外部輸入脈沖的計(jì)數(shù)對外部輸入脈沖的計(jì)數(shù);n所謂所謂定時(shí)器定時(shí)器

2、也是對脈沖進(jìn)行計(jì)數(shù)完成的,也是對脈沖進(jìn)行計(jì)數(shù)完成的,計(jì)數(shù)的是計(jì)數(shù)的是51單片機(jī)單片機(jī)內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)脈沖內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)脈沖,通過通過計(jì)數(shù)脈沖個(gè)數(shù)實(shí)現(xiàn)定時(shí)計(jì)數(shù)脈沖個(gè)數(shù)實(shí)現(xiàn)定時(shí)。n所以,定時(shí)器和計(jì)數(shù)器本質(zhì)上是一致的,所以,定時(shí)器和計(jì)數(shù)器本質(zhì)上是一致的,在以后的敘述中將定時(shí)器在以后的敘述中將定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器籠統(tǒng)稱為籠統(tǒng)稱為定時(shí)器定時(shí)器。4定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用5定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理6定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理n組成:兩個(gè)組成:兩個(gè)16位的定時(shí)器位的定時(shí)器T0和和T1,以及他們的工作方式寄存器,以及他們的工作方式寄存器TMOD和控制寄存器

3、和控制寄存器TCON等組成。內(nèi)部通過等組成。內(nèi)部通過總線總線與與CPU相連。相連。n定時(shí)器定時(shí)器T0和和T1各由兩個(gè)各由兩個(gè)8位特殊功能寄存器位特殊功能寄存器TH0、TL0、TH1、TL1構(gòu)成。構(gòu)成。n工作方式寄存器工作方式寄存器TMOD:用于設(shè)置定時(shí)器的用于設(shè)置定時(shí)器的工作模式和工作方式工作模式和工作方式;n控制寄存器控制寄存器TCON:用于用于啟動和停止啟動和停止定時(shí)器的計(jì)數(shù),并控制定時(shí)器定時(shí)器的計(jì)數(shù),并控制定時(shí)器的狀態(tài);的狀態(tài);n單片機(jī)復(fù)位時(shí),兩個(gè)寄存器的所有位都被清單片機(jī)復(fù)位時(shí),兩個(gè)寄存器的所有位都被清0。8051定時(shí)器定時(shí)器內(nèi)部結(jié)構(gòu)框圖內(nèi)部結(jié)構(gòu)框圖7定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)

4、及工作原理n兩個(gè)兩個(gè)可編程可編程的定時(shí)器的定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器T1、T0。n每個(gè)定時(shí)器內(nèi)部結(jié)構(gòu)實(shí)際上就是一個(gè)每個(gè)定時(shí)器內(nèi)部結(jié)構(gòu)實(shí)際上就是一個(gè)可編程的加法計(jì)數(shù)器可編程的加法計(jì)數(shù)器,由編程來設(shè)置它工作在定時(shí)狀態(tài)還是計(jì)數(shù)狀態(tài)。由編程來設(shè)置它工作在定時(shí)狀態(tài)還是計(jì)數(shù)狀態(tài)。兩種工作模式兩種工作模式: (1) 計(jì)數(shù)器計(jì)數(shù)器工作模式工作模式就是對外部事件進(jìn)行計(jì)數(shù)。就是對外部事件進(jìn)行計(jì)數(shù)。計(jì)數(shù)脈沖來自相應(yīng)的外部輸計(jì)數(shù)脈沖來自相應(yīng)的外部輸入入引腳引腳T0T0(P3.4)P3.4)或或T1(P3.5)T1(P3.5)。當(dāng)輸入信號發(fā)生由。當(dāng)輸入信號發(fā)生由1 1至至0 0的的負(fù)跳變負(fù)跳變( (下降沿下降沿) )時(shí),計(jì)數(shù)

5、器(時(shí),計(jì)數(shù)器(TH0TH0,TL0TL0或或TH1TH1,TL1TL1)的值增的值增1 1。(2) 定時(shí)器定時(shí)器工作模式工作模式也是通過計(jì)數(shù)實(shí)現(xiàn)的。也是通過計(jì)數(shù)實(shí)現(xiàn)的。計(jì)數(shù)脈沖來自內(nèi)部時(shí)鐘脈沖計(jì)數(shù)脈沖來自內(nèi)部時(shí)鐘脈沖,每每個(gè)機(jī)器周期計(jì)數(shù)值增個(gè)機(jī)器周期計(jì)數(shù)值增1 1,每個(gè)機(jī)器周期,每個(gè)機(jī)器周期=12=12個(gè)振蕩周期,個(gè)振蕩周期,因此計(jì)數(shù)頻率為振蕩頻率的因此計(jì)數(shù)頻率為振蕩頻率的1/121/12。所以。所以定時(shí)時(shí)間定時(shí)時(shí)間= =計(jì)數(shù)計(jì)數(shù)值值機(jī)器周期機(jī)器周期。8定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理n當(dāng)控制信號當(dāng)控制信號 定時(shí)器工作在定時(shí)器工作在定時(shí)方式定時(shí)方式;加;加1計(jì)數(shù)器對脈沖計(jì)數(shù)器對脈

6、沖f進(jìn)行計(jì)數(shù),每來一個(gè)脈沖,計(jì)數(shù)器加進(jìn)行計(jì)數(shù),每來一個(gè)脈沖,計(jì)數(shù)器加1,直到計(jì)時(shí)器計(jì)滿溢出;,直到計(jì)時(shí)器計(jì)滿溢出; 因?yàn)橐驗(yàn)?,即一個(gè)計(jì)數(shù)脈沖的周期就是一個(gè)機(jī)器周期;計(jì)數(shù),即一個(gè)計(jì)數(shù)脈沖的周期就是一個(gè)機(jī)器周期;計(jì)數(shù)器計(jì)數(shù)的是機(jī)器周期脈沖個(gè)數(shù)。從而實(shí)現(xiàn)定時(shí)。器計(jì)數(shù)的是機(jī)器周期脈沖個(gè)數(shù)。從而實(shí)現(xiàn)定時(shí)。n當(dāng)控制信號當(dāng)控制信號 定時(shí)器工作在定時(shí)器工作在計(jì)數(shù)方式計(jì)數(shù)方式;加;加1計(jì)數(shù)器對來自輸計(jì)數(shù)器對來自輸入引腳入引腳T0(P3.4)和和T1(P3.5)的外信號脈沖進(jìn)行計(jì)數(shù),每來一個(gè)的外信號脈沖進(jìn)行計(jì)數(shù),每來一個(gè)脈沖,計(jì)數(shù)器加脈沖,計(jì)數(shù)器加1,直到計(jì)時(shí)器計(jì)滿溢出;,直到計(jì)時(shí)器計(jì)滿溢出;C/T=0Tx T

7、HxTFxTLxTRxINTx定時(shí)定時(shí)計(jì)數(shù)計(jì)數(shù)0f0/12ff 控制信號控制信號K“1”“1”啟動,計(jì)數(shù)器運(yùn)行;啟動,計(jì)數(shù)器運(yùn)行;“0”0”停止,計(jì)數(shù)器停止;停止,計(jì)數(shù)器停止;定時(shí)器定時(shí)器/ /計(jì)數(shù)器原理框圖計(jì)數(shù)器原理框圖加加1 1計(jì)數(shù)器計(jì)數(shù)器0/12ff1C/T=9n控制信號控制信號K K可以控制計(jì)數(shù)器的可以控制計(jì)數(shù)器的“啟動啟動”和和“停止停止”, TCON(88H)K = TRx(INTx+GATE)10P1P2S1振蕩周期振蕩周期時(shí)鐘周期時(shí)鐘周期機(jī)器周期機(jī)器周期機(jī)器周期機(jī)器周期指令周期指令周期XTAL2(OSC)S2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P

8、1P1P1P1P2P2P2P2P2P2P2P2P2P2P2 振蕩周期、振蕩周期、時(shí)鐘周期時(shí)鐘周期、機(jī)器周期機(jī)器周期和和指令周期指令周期11 定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理n在每個(gè)機(jī)器周期的在每個(gè)機(jī)器周期的S5P2S5P2期間采樣檢測引腳輸入電平期間采樣檢測引腳輸入電平。n若前一個(gè)機(jī)器周期采樣值為若前一個(gè)機(jī)器周期采樣值為“1”1”,后一個(gè)機(jī)器周期采樣值,后一個(gè)機(jī)器周期采樣值為為“0”0”,則計(jì)數(shù)器加,則計(jì)數(shù)器加1 1。n新的計(jì)數(shù)值在檢測到輸入引腳電平發(fā)生新的計(jì)數(shù)值在檢測到輸入引腳電平發(fā)生“1”1”到到“0”0”的負(fù)的負(fù)跳變(下降沿)后,于下一個(gè)機(jī)器周期的跳變(下降沿)后,于下一個(gè)機(jī)

9、器周期的S3P1S3P1期間裝入計(jì)期間裝入計(jì)數(shù)器中數(shù)器中。n由于由于CPUCPU需要兩個(gè)機(jī)器周期來識別一個(gè)需要兩個(gè)機(jī)器周期來識別一個(gè)“1”1”到到“0”0”的跳變的跳變信號,所以最高的計(jì)數(shù)頻率為振蕩周期的信號,所以最高的計(jì)數(shù)頻率為振蕩周期的1/241/24。P1P2S1振蕩周期振蕩周期狀態(tài)周期狀態(tài)周期機(jī)器周期機(jī)器周期機(jī)器周期機(jī)器周期指令周期指令周期XTAL2(OSC)S2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P2P212定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理n定時(shí)定時(shí)/ /計(jì)數(shù)器對輸入信號的要求計(jì)數(shù)器對輸入

10、信號的要求n外部計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的外部計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的1/24,例如例如選用選用12MHz頻率的晶體,則可輸入頻率的晶體,則可輸入500KHz的外部脈沖。的外部脈沖。n輸入信號的高、低電平至少要分別保持一個(gè)機(jī)器周期。輸入信號的高、低電平至少要分別保持一個(gè)機(jī)器周期。如圖所示,圖中如圖所示,圖中Tcy為機(jī)器周期。為機(jī)器周期。13n可編程定時(shí)器的工作方式、啟動、停止、溢出標(biāo)可編程定時(shí)器的工作方式、啟動、停止、溢出標(biāo)志、計(jì)數(shù)器等都是志、計(jì)數(shù)器等都是可編程可編程的的通過設(shè)置寄存器通過設(shè)置寄存器TMOD,TCON,TH0,TL0,TH1和和TL1 實(shí)現(xiàn)。實(shí)現(xiàn)。n當(dāng)設(shè)置

11、了定時(shí)器的工作方式并啟動定時(shí)器工作后,當(dāng)設(shè)置了定時(shí)器的工作方式并啟動定時(shí)器工作后,定時(shí)器就按被設(shè)定好的工作方式獨(dú)立工作,定時(shí)器就按被設(shè)定好的工作方式獨(dú)立工作,不再不再占用占用CPU,只有在計(jì)數(shù)器計(jì)滿溢出時(shí)才向,只有在計(jì)數(shù)器計(jì)滿溢出時(shí)才向CPU申申請中斷,占用請中斷,占用CPU。n由此可見,定時(shí)器是單片機(jī)中工作效率高且應(yīng)用由此可見,定時(shí)器是單片機(jī)中工作效率高且應(yīng)用靈活的部件。靈活的部件。定時(shí)器的結(jié)構(gòu)及工作原理定時(shí)器的結(jié)構(gòu)及工作原理14定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用定時(shí)器的定時(shí)器的TMOD和和TCON寄存器寄存器15定時(shí)器的定時(shí)器的TMOD和和TCON寄存器寄存器n8051單片機(jī)定時(shí)器

12、主要有幾個(gè)特殊功能寄存器組單片機(jī)定時(shí)器主要有幾個(gè)特殊功能寄存器組成:成:TMOD,TCON,TH0,TL0,TH1,TL1。nTMOD:設(shè)置定時(shí)器的工作方式;:設(shè)置定時(shí)器的工作方式;nTCON:控制定時(shí)器的啟動和停止;:控制定時(shí)器的啟動和停止;nTH0和和TL0 :存放定時(shí)器:存放定時(shí)器T0的的初值或計(jì)數(shù)結(jié)果初值或計(jì)數(shù)結(jié)果; TH0存放高存放高8位,位,TL0 存放低存放低8位;位;nTH1和和TL1 :存放定時(shí)器:存放定時(shí)器T1的的初值或計(jì)數(shù)結(jié)果初值或計(jì)數(shù)結(jié)果; TH1存放高存放高8位,位,TL1 存放低存放低8位;位;16工作方式控制寄存器工作方式控制寄存器TMOD8位分為兩組,高位分為兩

13、組,高4位控制位控制T1,低,低4位控制位控制T0。(1) GATE 門控位門控位 0: 以以TRX (X=0,1) 來啟動定時(shí)器來啟動定時(shí)器/計(jì)數(shù)器運(yùn)行。計(jì)數(shù)器運(yùn)行。1: 用外中斷引腳用外中斷引腳 (INT0*或或INT1*) 上的高電平和上的高電平和TRX來啟來啟動定時(shí)器動定時(shí)器/計(jì)數(shù)器運(yùn)行。計(jì)數(shù)器運(yùn)行。(2) M1、M0 工作方式選擇位工作方式選擇位 M1 M0 工工 作作 方方 式式 0 0 方式方式0,13位定時(shí)器位定時(shí)器/計(jì)數(shù)器。計(jì)數(shù)器。 0 1方式方式1,16位定時(shí)器位定時(shí)器/計(jì)數(shù)器。計(jì)數(shù)器。 1 0 方式方式2,8位常數(shù)自動重新裝載位常數(shù)自動重新裝載 1 1 方式方式3,僅適用

14、于,僅適用于T0,T0分成兩個(gè)分成兩個(gè)8位計(jì)數(shù)器,位計(jì)數(shù)器,T1停止計(jì)數(shù)。停止計(jì)數(shù)。(3) C/T* 計(jì)數(shù)器模式和定時(shí)器模式選擇位計(jì)數(shù)器模式和定時(shí)器模式選擇位0: 定時(shí)器模式。定時(shí)器模式。 1: 計(jì)數(shù)器模式。計(jì)數(shù)器模式。(4) TMOD無位地址,不能位尋址。無位地址,不能位尋址。(5) 復(fù)位時(shí),復(fù)位時(shí),TMOD所有位均為所有位均為“0”。17低低4位與外部中斷有關(guān),高位與外部中斷有關(guān),高4位的功能如下位的功能如下: (1) TF1、TF0 計(jì)數(shù)溢出標(biāo)志位計(jì)數(shù)溢出標(biāo)志位 定時(shí)器定時(shí)器T0或或T1計(jì)數(shù)溢出時(shí),由硬件計(jì)數(shù)溢出時(shí),由硬件自動自動將此位將此位置置“1”;TFx可以由程序查詢,也是定時(shí)中斷

15、的請求源;可以由程序查詢,也是定時(shí)中斷的請求源;(2) TR1、TR0 計(jì)數(shù)運(yùn)行控制位計(jì)數(shù)運(yùn)行控制位 TRx=1: 啟動定時(shí)器啟動定時(shí)器/計(jì)數(shù)器工作計(jì)數(shù)器工作 TRx=0: 停止定時(shí)器停止定時(shí)器/計(jì)數(shù)器工作計(jì)數(shù)器工作 控制寄存器控制寄存器TCON1819定時(shí)定時(shí)/ /計(jì)數(shù)器的初始化計(jì)數(shù)器的初始化51單片機(jī)的定時(shí)器單片機(jī)的定時(shí)器/計(jì)數(shù)器是可編程的,但在進(jìn)行定時(shí)或計(jì)計(jì)數(shù)器是可編程的,但在進(jìn)行定時(shí)或計(jì)數(shù)之前要對程序進(jìn)行數(shù)之前要對程序進(jìn)行初始化初始化,具體步驟如下:,具體步驟如下:(1)對)對TMOD賦值,以賦值,以確定確定定時(shí)器的定時(shí)器的工作模式工作模式;(2)置置定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器初值初值,直

16、接將初值寫入寄存器的,直接將初值寫入寄存器的TH0、TL0或或TH1、TL1;(3)根據(jù)需要,對)根據(jù)需要,對IE置初值,開放定時(shí)器中斷;置初值,開放定時(shí)器中斷;(4)對)對TCON寄存器中的寄存器中的TR0或或TR1置位置位,啟動定時(shí),啟動定時(shí)/計(jì)數(shù)計(jì)數(shù)器,置位以后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)器,置位以后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)數(shù)或開始定時(shí)。數(shù)或開始定時(shí)。20定時(shí)定時(shí)/ /計(jì)數(shù)器的初始化計(jì)數(shù)器的初始化初值計(jì)算初值計(jì)算: 設(shè)計(jì)數(shù)器的最大值為設(shè)計(jì)數(shù)器的最大值為M,則置入的初值,則置入的初值X為:為: 計(jì)數(shù)方式:計(jì)數(shù)方式:X=M-計(jì)數(shù)值計(jì)數(shù)值 定時(shí)方式:由定時(shí)方式:由(M-

17、X)T=定時(shí)值定時(shí)值,得得X=M-定時(shí)值定時(shí)值/T T為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。(模式(模式0: M為為213,模式,模式1: M為為216,模式,模式2和和3: M為為28)例如:機(jī)器周期為例如:機(jī)器周期為1s 1s 時(shí),時(shí), 若工作在模式若工作在模式0 0,則最大定時(shí)值為,則最大定時(shí)值為:2:213131s =8.192ms1s =8.192ms 若工作在模式若工作在模式1,1,則最大定時(shí)值為則最大定時(shí)值為: : 2 216161s =65.536ms1s =65.536ms21定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用定時(shí)器的工作方式定時(shí)器的工作方式

18、22n定時(shí)器定時(shí)器T0有有4種工作方式:種工作方式:即:即:方式方式0,方式,方式1,方式,方式2,方式,方式3。n定時(shí)器定時(shí)器T1有有3種工作方式:種工作方式:即:即:方式方式0,方式,方式1,方式,方式2。定時(shí)器的工作方式定時(shí)器的工作方式23方式方式0 M1、M0設(shè)置為設(shè)置為00 ,為,為13位位計(jì)數(shù)器,以計(jì)數(shù)器,以T1為例,為例,其框圖如下其框圖如下:定時(shí)器的工作方式定時(shí)器的工作方式方式方式0計(jì)數(shù)脈沖輸入加1計(jì)數(shù)器24定時(shí)器的工作方式定時(shí)器的工作方式方式方式0TH1 D12 D11 D10 D9 D8 D7 D6 D5TL1 D4 D3 D2 D1 D0n在這種方式下,在這種方式下,16

19、位寄存器位寄存器TH1和和TL1只用只用13位,位,由由TH1的的8位和位和TL1的低的低5位組成。位組成。TL1的高的高3位不定。位不定。n當(dāng)當(dāng)TL1的低的低5位計(jì)數(shù)溢出時(shí),向位計(jì)數(shù)溢出時(shí),向TH1進(jìn)位。而進(jìn)位。而TH1計(jì)計(jì)數(shù)溢出時(shí),則向中斷標(biāo)志位數(shù)溢出時(shí),則向中斷標(biāo)志位TF1進(jìn)位(即硬件將進(jìn)位(即硬件將TF1置置1),并請求中斷。),并請求中斷。n可通過查詢可通過查詢TF1是否置是否置“1”或考察中斷是否發(fā)生來判或考察中斷是否發(fā)生來判定定時(shí)器定定時(shí)器T1的操作完成與否。的操作完成與否。25定時(shí)器的工作方式定時(shí)器的工作方式方式方式0n當(dāng)當(dāng)C/T=0時(shí),為時(shí),為定時(shí)定時(shí)工作模式,開關(guān)接到振蕩器

20、工作模式,開關(guān)接到振蕩器的的12分頻器輸出上,計(jì)數(shù)器對機(jī)器周期脈沖計(jì)數(shù)。分頻器輸出上,計(jì)數(shù)器對機(jī)器周期脈沖計(jì)數(shù)。其定時(shí)時(shí)間為:其定時(shí)時(shí)間為:(213-初值初值)振蕩周期振蕩周期12例如:若晶振頻率為例如:若晶振頻率為12MHz,則最長的定時(shí)時(shí)間,則最長的定時(shí)時(shí)間為為(213-0)(1/12)12us=8.191msn當(dāng)當(dāng)C/T=1時(shí),為時(shí),為計(jì)數(shù)計(jì)數(shù)工作模式,開關(guān)與外部引腳工作模式,開關(guān)與外部引腳T1(P3.5)接通,計(jì)數(shù)器對來自外部引腳的輸入脈接通,計(jì)數(shù)器對來自外部引腳的輸入脈沖計(jì)數(shù)。當(dāng)外部信號發(fā)生負(fù)跳變時(shí)計(jì)數(shù)器加沖計(jì)數(shù)。當(dāng)外部信號發(fā)生負(fù)跳變時(shí)計(jì)數(shù)器加1。26定時(shí)器的工作方式定時(shí)器的工作方式

21、方式方式0nGATE控制定時(shí)器控制定時(shí)器Tx(T1或或T0)的條件的條件:(1) 當(dāng)當(dāng)GATE=0時(shí),時(shí),“或門或門”輸出恒為輸出恒為1,“與門與門”的輸?shù)妮敵鲂盘柍鲂盘朘由由TRx決定決定(即此時(shí)即此時(shí)K=TRx),定時(shí)器不受,定時(shí)器不受INTx輸入電平的影響,由輸入電平的影響,由TRx直接控制定時(shí)器的啟動和停止。直接控制定時(shí)器的啟動和停止。TRx=1;計(jì)數(shù)啟動;計(jì)數(shù)啟動;TRx=0;計(jì)數(shù)停止;計(jì)數(shù)停止;(2) 當(dāng)當(dāng)GATE=1時(shí),時(shí), “與門與門”的輸出信號的輸出信號K由由INTx輸入輸入電平和電平和TRx位的狀態(tài)一起決定位的狀態(tài)一起決定(即此時(shí)即此時(shí)K=TRxINTx),當(dāng)且僅當(dāng)當(dāng)且僅當(dāng)

22、TRx=1且且INTx=1(高電平高電平)時(shí),時(shí),計(jì)數(shù)啟動計(jì)數(shù)啟動;否則,計(jì)數(shù)停止否則,計(jì)數(shù)停止。返回返回27方式方式1 M1、M0=01,為,為16位位的計(jì)數(shù)器,除位數(shù)外,其他與方式的計(jì)數(shù)器,除位數(shù)外,其他與方式0相同相同。n其定時(shí)時(shí)間為:其定時(shí)時(shí)間為:(216-初值初值)振蕩周期振蕩周期12例如:若晶振頻率為例如:若晶振頻率為12MHz,則最長的定時(shí)時(shí)間為,則最長的定時(shí)時(shí)間為(216-0)(1/12)12us=65.536ms定時(shí)器的工作方式定時(shí)器的工作方式方式方式128方式方式2 M1、M0=10 ,為,為自動恢復(fù)初值的自動恢復(fù)初值的8位位計(jì)數(shù)器,等效框圖如計(jì)數(shù)器,等效框圖如下下: TL

23、x作為作為8位計(jì)數(shù)器,位計(jì)數(shù)器,THx作為重置初值的緩沖器。作為重置初值的緩沖器。 定時(shí)器的工作方式定時(shí)器的工作方式方式方式2THx作為常數(shù)緩沖器作為常數(shù)緩沖器,當(dāng),當(dāng)TLx計(jì)數(shù)溢出時(shí),在置計(jì)數(shù)溢出時(shí),在置“1”溢出標(biāo)志溢出標(biāo)志TFx的同時(shí),還的同時(shí),還自動的將自動的將THx中的初值送至中的初值送至TLx,使,使TLx從初值開始重從初值開始重新計(jì)數(shù)。定時(shí)器新計(jì)數(shù)。定時(shí)器/計(jì)數(shù)器的方式計(jì)數(shù)器的方式2工作過程如圖工作過程如圖 (x=0, 1) 。29n優(yōu)點(diǎn):優(yōu)點(diǎn):方式方式0 0和方式和方式1 1用于循環(huán)重復(fù)定時(shí)或計(jì)數(shù)用于循環(huán)重復(fù)定時(shí)或計(jì)數(shù)時(shí),在時(shí),在每次計(jì)數(shù)器擠滿溢出后,計(jì)數(shù)器每次計(jì)數(shù)器擠滿溢出后

24、,計(jì)數(shù)器復(fù)復(fù)0 0。若要進(jìn)行新一輪的計(jì)數(shù),就得重。若要進(jìn)行新一輪的計(jì)數(shù),就得重新裝入計(jì)數(shù)初值。這樣一來不僅造成新裝入計(jì)數(shù)初值。這樣一來不僅造成編編程麻煩程麻煩,而且,而且影響定時(shí)精度影響定時(shí)精度。而方式。而方式2 2具有初值自動裝入的功能,避免了這個(gè)具有初值自動裝入的功能,避免了這個(gè)缺點(diǎn),缺點(diǎn),可實(shí)現(xiàn)精確的定時(shí)可實(shí)現(xiàn)精確的定時(shí)。n缺點(diǎn):缺點(diǎn):只有只有8 8位計(jì)數(shù)器,定時(shí)時(shí)間短、計(jì)數(shù)范位計(jì)數(shù)器,定時(shí)時(shí)間短、計(jì)數(shù)范圍小。圍小。其定時(shí)時(shí)間為:其定時(shí)時(shí)間為: (28-初值初值)振蕩周期振蕩周期12若晶振頻率為若晶振頻率為12MHz,則最長的定時(shí)時(shí)間為,則最長的定時(shí)時(shí)間為(28-0)(1/12)12us

25、=0.256ms定時(shí)器的工作方式定時(shí)器的工作方式方式方式2方式方式2工作過程圖工作過程圖 (x=0, 1) 。30定時(shí)器定時(shí)器/計(jì)數(shù)器及其應(yīng)用計(jì)數(shù)器及其應(yīng)用定時(shí)器的編程和應(yīng)用定時(shí)器的編程和應(yīng)用31定時(shí)器的編程和應(yīng)用定時(shí)器的編程和應(yīng)用n編程說明編程說明51單片機(jī)的定時(shí)器是可編程的,但在進(jìn)行定時(shí)或計(jì)數(shù)之前要對程序進(jìn)行單片機(jī)的定時(shí)器是可編程的,但在進(jìn)行定時(shí)或計(jì)數(shù)之前要對程序進(jìn)行初始化初始化,具體步驟如下:,具體步驟如下:(1)確定工作方式字:對)確定工作方式字:對TMOD寄存器正確賦值;寄存器正確賦值;(2)確定定時(shí)初值:計(jì)算初值,直接將初值寫入寄存器的)確定定時(shí)初值:計(jì)算初值,直接將初值寫入寄存器

26、的TH0、TL0或或TH1、TL1;初值計(jì)算初值計(jì)算: 設(shè)計(jì)數(shù)器的最大值為設(shè)計(jì)數(shù)器的最大值為M,則置入的初值,則置入的初值X為:為: 計(jì)數(shù)方式:計(jì)數(shù)方式:X=M-計(jì)數(shù)值計(jì)數(shù)值 定時(shí)方式:由定時(shí)方式:由(M-X)T=定時(shí)值定時(shí)值,得得X=M-定時(shí)值定時(shí)值/T T為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。(模式(模式0 M為為213,模式,模式1 M為為216,模式,模式2和和3 M為為28)(3)根據(jù)需要,對)根據(jù)需要,對IE置初值,開放定時(shí)器中斷;置初值,開放定時(shí)器中斷;(4)啟動定時(shí))啟動定時(shí)/計(jì)數(shù)器,對計(jì)數(shù)器,對TCON寄存器中的寄存器中的TR0或或TR1置位,置位以

27、置位,置位以后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)數(shù)或開始定時(shí)。后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)數(shù)或開始定時(shí)。32定時(shí)器的編程和應(yīng)用定時(shí)器的編程和應(yīng)用例例1 要在要在P1.0上輸出一個(gè)周期為上輸出一個(gè)周期為2ms的方波,的方波,假設(shè)系統(tǒng)振蕩頻率采用假設(shè)系統(tǒng)振蕩頻率采用12MHz。 利用利用T0方式方式0產(chǎn)生產(chǎn)生1ms的定時(shí)的定時(shí)方波的周期用方波的周期用T0來確定,讓來確定,讓T0每隔每隔1ms計(jì)數(shù)溢出計(jì)數(shù)溢出1次,即次,即TF0=1;查詢到;查詢到TF0=1 則則CPU對對P1.0取反。取反。即要使即要使P1.0P1.0每隔每隔1ms1ms取反取反一次。一次。33定時(shí)器的編程和應(yīng)用定

28、時(shí)器的編程和應(yīng)用第一步:第一步: 確定工作方式字確定工作方式字 方式方式0 (13位位)最長可定時(shí)最長可定時(shí) 8.192ms; 方式方式1 (16位位)最長可定時(shí)最長可定時(shí) 65.536ms; 方式方式2 (8位位)最長可定時(shí)最長可定時(shí) 256 s。nT0為方式為方式0, M1M0=00 n定時(shí)工作狀態(tài),定時(shí)工作狀態(tài), C/T=0nGATE=0,不受,不受INT0控制,控制,nT1不用全部取不用全部取“0”值。值。n故故TMOD=00H34定時(shí)器的編程和應(yīng)用定時(shí)器的編程和應(yīng)用第二步:第二步: 計(jì)算計(jì)算1ms定時(shí)的初值定時(shí)的初值X 設(shè)初值為設(shè)初值為X,則有,則有: (213-X) 1210-6

29、1/12=110-3可求得:可求得:X=8192-1000=7192X化為化為16進(jìn)制,進(jìn)制,即即X=1C18H=1,1100,000 1,1000B。所以,所以,T0的初值為的初值為: TH0=E0H TL0=18HTH0 1 1 1 0 0 0 0 0TL0 1 1 0 0 035例例2 將將例例1中的輸出方波周期改為中的輸出方波周期改為1秒。秒。 分析:分析: 周期為周期為1s的方波要求的方波要求500ms的定時(shí)。的定時(shí)。 (1) T0工作方式的確定工作方式的確定因定時(shí)時(shí)間較長,采用哪一種工作方式?因定時(shí)時(shí)間較長,采用哪一種工作方式?由各種工作方由各種工作方式的特性,可計(jì)算出式的特性,可計(jì)算出: 方式方式0 (13位位)最長可定時(shí)最長可定時(shí) 8.192ms; 方式方式1 (16位位)最長可定時(shí)最長可定時(shí) 65.536ms; 方式方式2 (8位位)最長可定時(shí)最長可定時(shí) 256 s。 所以采用定時(shí)器定時(shí)加軟件計(jì)數(shù)的方法來實(shí)現(xiàn)延長定時(shí)。所以采用定時(shí)器定時(shí)加軟件計(jì)數(shù)的方法來實(shí)現(xiàn)延長定時(shí)。選方式選方式1,定時(shí),定時(shí)50ms,軟件計(jì)數(shù),軟件計(jì)數(shù)10次。次。50ms 10=500ms。 所以,所以,TMOD=01H定時(shí)器的編程和應(yīng)用定時(shí)器的編程和應(yīng)用以上各方式以上各方式都不滿足要求都不滿足要求36

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論