第6章 定時器及應用.ppt_第1頁
第6章 定時器及應用.ppt_第2頁
第6章 定時器及應用.ppt_第3頁
第6章 定時器及應用.ppt_第4頁
第6章 定時器及應用.ppt_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第六章定 時 器 及 應 用,主講:康科鋒,第六章 定時器及應用,在測控系統(tǒng)中,常常需要有實時時鐘和計數(shù)器,以實現(xiàn)定時控制以及對外界事件進行計數(shù)。MCS-51內(nèi)部的兩個16位定時器/計數(shù)器就具有這兩種功能,可用于定時控制、延時、對外部事件計數(shù)和檢測等場合。,定時器概述,定時器的控制,定時器的四種模式及應用,定時器的結(jié)構(gòu)和功能,工作寄存器和控制寄存器,模式1、2、3及應用,這些寄存器之間是通過內(nèi)部總線和控制邏輯電路連接起來的。,6.1 定時器概述,6.1 定時器概述,89C51定時器的結(jié)構(gòu)如圖6-1 所示。 有兩個16位的定時器/計數(shù)器,即T0和T1,它們實際上都是16位加1計數(shù)器。 T0由兩個

2、8位特殊功能寄存器TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。這些寄存器用于存放定時和計數(shù)初值。,0000H FFFFH 0 65535,6.1 定時器概述, 每個定時器都可由軟件設(shè)置為定時工作方式或計數(shù)工 作方式及其他靈活多樣的可控功能方式。這些功能由 特殊功能寄存器TMOD和TCON所控制。, TMOD 主要用于選定定時器的工作方式; TCON主要用于控制定時器的啟動與停止。,6.1 定時器概述,16位的定時器/計數(shù)器的實質(zhì)上是一個加1的計數(shù)器, 其控制電路受軟件控制、切換。計數(shù)的次數(shù)和時間之間 是相關(guān)的。,只要計數(shù)脈沖的間隔相等,計數(shù)值就代表時間的流逝,6.1 定時器概述, 定時工作方

3、式,當定時器/計數(shù)器為定時工作方式時,加1信號由振蕩器 的12分頻產(chǎn)生,即每過一個機器周期,計數(shù)值增1,直 至計滿溢出為止。 顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。由于 一個機器周期等于12個振蕩周期,所以計數(shù)頻率,fcount= 1/12 fosc,6.1 定時器概述, 定時工作方式,例:晶振為12MHz ,則計數(shù)周期為,T=1/(12*106)Hz*1/12 =1微秒 最短的定時周期,當8051采用12MHz晶振時,一個機器周期為1s,計數(shù)頻率為1MHz。,6.1 定時器概述, 計數(shù)工作方式,當定時器/計數(shù)器為計數(shù)工作方式時,通過引腳T0和T1 對外部信號計數(shù),外部脈沖的下降沿觸發(fā)計

4、數(shù)。,在每個機器周期的 S5P2期間采樣引腳。,采樣過程:,當輸入脈沖信號產(chǎn)生由1至0的下降沿時定時器的值加1。,Tcy,Tcy,6.1 定時器概述, 計數(shù)工作方式,由于CPU檢測一個由1到0的跳變需要兩個機器周期, 所以計數(shù)的最高頻率為振蕩頻率的1/24。 為了確保給定電平在變化前至少被采樣一次,外部計數(shù) 脈沖的高低電平均需保持一個機器周期以上。,6.1 定時器概述,經(jīng)過分析,我們知道單片機中的定時器和計數(shù)器是一個東西,只不過計數(shù)器用來記錄外界發(fā)生的事情,而定時器則是由單片機提供的一個非常穩(wěn)定的計數(shù)源。 定時器/計數(shù)器是一種可編程部件,在其開始工作前,CPU必須將一些命令(控制字)寫入定時器

5、/計數(shù)器。這個過程稱為定時器/計數(shù)器的初始化。,6.1 定時器概述,當CPU用軟件給定時器設(shè)置了某種工作方式之后,定時器就會按設(shè)定的工作方式獨立運行,不再占用CPU的操作時間,除非定時器計數(shù)溢出,才可能中斷CPU當前操作。,每個定時器/計數(shù)器還有4種工作模式。其中模式0-2對T0和T1是一樣的,模式3對兩者不同。,6.2 定時器的控制,定時器共有兩個控制字,由軟件寫入TMOD和TCON兩個8位寄存器,用來設(shè)置T0或T1的操作模式和控制功能。當89C51系統(tǒng)復位時,兩個寄存器所有位都被清零。,6.2 定時器的控制,TMOD用于控制T0和T1的工作模式。 TMOD不能位尋址,只能用字節(jié)設(shè)置定時器的

6、工作模式,低半字節(jié)設(shè)置T0,高半字節(jié)設(shè)置T1。 89C51系統(tǒng)復位時,TMOD的所有位被清0。,89H,圖6-3 工作模式寄存器TMOD的位定義,6.2 定時器的控制,定時器T1,定時器T0,TMOD (89H),D7 D6 D5 D4 D3 D2 D1 D0,TMOD各位的功能, M1和M0操作模式控制位。 兩位可形成四種編碼,對應于四種模式。見表6-1。,TMOD各位的功能:,6.2 定時器的控制,D7 D6 D5 D4 D3 D2 D1 D0,定時器T1,定時器T0,表6-1 M1,M0控制的四種工作模式,6.2 定時器的控制,TMOD各位的功能, C/T計數(shù)器/定時器方式選擇位。,6.

7、2 定時器的控制,D7 D6 D5 D4 D3 D2 D1 D0,TMOD各位的功能, GATE門控位。,6.2 定時器的控制,D7 D6 D5 D4 D3 D2 D1 D0, GATE=0,只要用軟件使TR0(或TR1)置1就可啟動定時器,而不管INT0(或INT1)的電平的高低; GATE=1,只有INT0(或INT1)引腳為高電平且由軟件使TR0(或TR1)置1時,才能啟動定時器工作。,6.2 定時器的控制,6.2 定時器的控制,TCON除可字節(jié)尋址外,各位還可位尋址。 89C51系統(tǒng)復位時,TCON的所有位被清0。 TCON各位的定義格式如圖所示:,TF1,TR1,TF0,TR0,IE

8、1,IE0,IT1,IT0,TCON (88H),8FH 8EH 8DH 8CH 8BH 8AH 89H 88H,TCON各位的功能。,88H,TMOD各位的功能,6.2 定時器的控制,TF1,TR1,TF0,TR0,IE1,IE0,IT1,IT0,TCON (88H),8FH 8EH 8DH 8CH 8BH 8AH 89H 88H, TF1(TCON.7) T1溢出標志位。, 當T1溢出時,由硬件自動使中斷觸發(fā)器TF1置1, 并CPU申請中斷。 當CPU響應中斷進入中斷服務(wù)程序后,TF1由被硬 件自動清0。TF1也可以用軟件清0。, TF0 (TCON.5)T0溢出標志位。 其功能和操作情況

9、同TF1。,TMOD各位的功能,6.2 定時器的控制,TF1,TR1,TF0,TR0,IE1,IE0,IT1,IT0,TCON (88H),8FH 8EH 8DH 8CH 8BH 8AH 89H 88H, TR1(TCON.6) T1運行控制位。, 可通過軟件置1(TR1=1)或清0(TR1=0)來啟動 或關(guān)閉 T1。 在程序中用指令“SETB TR1”使TR1位置1,定時器 T1便開始計數(shù)。, TR0 (TCON.4)T0運行控制位。 其功能和操作情況同TR1。,TMOD各位的功能,6.2 定時器的控制,TF1,TR1,TF0,TR0,IE1,IE0,IT1,IT0,TCON (88H),8

10、FH 8EH 8DH 8CH 8BH 8AH 89H 88H, IE1,IT1,IE0,IT0(TCON.3TCON.0), 外部中斷INT1,INT0請求及請求方式控制位。 前一章已經(jīng)講過。,6.2 定時器的控制,6.3 定時器的4種模式及應用,由上節(jié)可知,通過對TMOD中的M1、M0的設(shè)置,可以選擇四種工作方式。也就是每個定時器可構(gòu)成4種電路結(jié)構(gòu)模式。,在模式0、1和2,T0和T1的工作方式相同,在模式3,兩個定時器的方式不同。下面以T1為例,分述各種工作方式的特點和用法。,6.3 定時器的4種模式及應用,模式0為TL0(5位)、TH0(8位)方式,模式1為TL1(8位)、TH1(8位)方

11、式,其余完全相同。,13位計數(shù),6.3 定時器的4種模式及應用,(1)模式 1 的邏輯電路結(jié)構(gòu),圖6-7 T0(或T1)模式1結(jié)構(gòu)16位計數(shù)器,6.3 定時器的4種模式及應用,(1)模式 1 的邏輯電路結(jié)構(gòu),該模式對應的是一個16位的定時器/計數(shù)器。 用于定時工作方式時,定時時間為: t=(216T0初值)振蕩周期12 用于計數(shù)工作方式時,計數(shù)長度最大為: 216=65536(個外部脈沖),例6-1:用定時器T1產(chǎn)生一個50Hz的方波,由 P1.1 輸出。使用程序查詢方式,fosc=12MHz。,6.3 定時器的4種模式及應用,(2)模式 1 應用舉例(例6-1),解: 方波周期T=1/50=

12、0.02s =20ms 用T1定時10ms 計數(shù)初值X為: X=21612101000/12 =65 53610 000=55536=D8F0H,源程序清單: MOV TMOD,#10H ;設(shè)置T1為模式1 SETB TR1 ;啟動定時 LOOP: MOV TH1,#0D8H ;送初值 MOV TL1,#0F0H JNB TF1,$ ;查詢定時時間到否 CLR TF1 ;產(chǎn)生溢出,清標志位 CPL P1.1 ;P1.1取反輸出 SJMP LOOP ;重復循環(huán),6.3 定時器的4種模式及應用,(2)模式 1 應用舉例(例6-4),6.3 定時器的4種模式及應用,(1)模式 2 的邏輯電路結(jié)構(gòu),圖

13、6-7 T0(或T1)模式2結(jié)構(gòu)8位計數(shù)器,6.3 定時器的4種模式及應用,(1)模式2的邏輯電路結(jié)構(gòu),TL0計數(shù)溢出時,不僅使溢出中斷標志位TF0置1,而且還自動把TH0中的內(nèi)容重新裝載到TL0中。 用TL0用作8位計數(shù)器,TH0用以保存初值。,6.3 定時器的4種模式及應用,(2)模式2的工作特點,該模式把TL0(TL1)配置成一個可以自動重裝載的8位定時器/計數(shù)器; 在程序初始化時,TL0和TH0由軟件賦予相同的初值; 用于定時工作方式時,定時時間為: t=(28TH0初值)振蕩周期12,6.3 定時器的4種模式及應用,(2)模式2的工作特點,用于計數(shù)工作方式時,計數(shù)長度最大為:28=2

14、56(個外部脈沖); 該模式可省去軟件中重裝常數(shù)的語句,并可產(chǎn)生相當精確的定時時間,適合于作串行口波特率發(fā)生器。,例6-2:利用定時器T1的模式2對外部信號計數(shù)。 要求設(shè)計滿100次,將 P1.0端取反。,6.3 定時器的4種模式及應用,解: (1)選擇模式 外部信號由T1(P3.5)引腳輸入,每發(fā)生一次負跳變計數(shù)器加1,每輸入100個脈沖,計數(shù)器發(fā)生溢出中斷,中斷服務(wù)程序?qū)1.0取反一次。,6.3 定時器的4種模式及應用,(1)選擇模式 T1計數(shù)工作方式模式2的模式字為(TMOD)=60H。 T0不用時,TMOD的低4位可任取,但不能進入模式 3,一般取0。,(2)計算T1的計數(shù)初值,X=

15、 28 100=156D=9CH 因此:TL1的初值為9CH, 重裝初值寄存器TH1=9CH。,(3)程序清單 MAIN: MOV TMOD,#60H ;設(shè)置T1為模式2,外部計數(shù)方式 MOV TL1,#9CH ;T1計數(shù)器初值 MOV TH1,#9CH MOV IE,#88H ; 定時器開中斷 SETB TR1 ;啟動T1計數(shù) HERE:SJMP HERE ;等待中斷 ORG 001BH ;中斷服務(wù)程序入口 CPL P1.0 RETI,6.3 定時器的4種模式及應用,例6-3 :已知89C51單片機的fOSC=6MHz,請利用 T0和P1.0輸出矩形波。矩形波高電平寬為 50s,低電平為30

16、0 s。,解: (1)輸出及模式的確定,6.3 定時器的4種模式及應用,T0采用定時工作方式模式2,模式字為( TMOD )= 02H,(2)設(shè)置定時器初值X,6.3 定時器的4種模式及應用,T0采用模式2作50s定時的初值:,(28X)12/(6 106) =5010-6 s X=256 5010-6 6 106 /12 =231=E7H,作300s定時的初值:,(28X)12/(6 106) =30010-6 s X=256 30010-6 6 106 /12 =106=6AH,(3)主程序清單 MOV TMOD, #02H ;上電,轉(zhuǎn)向主程序 L2: CLR P1.0 ;P1.0輸出低電

17、平 CLR TR0 ;關(guān)閉T0 MOV TH0, #6AH ;置入定時300s初值 MOV TL0, #6AH SETB TR0 ;啟動T0,6.3 定時器的4種模式及應用,LOOP1: JBC TF0, L1 ;查詢300s時間到?到轉(zhuǎn)L1 SJMP LOOP1 ;時間未到,轉(zhuǎn)LOOP1,繼續(xù)查詢,L1: SETB P1.0 ;P1.0輸出高電平 CLR TR0 ;關(guān)閉T0 MOV TH0, #0E7H ;置入定時50s初值 MOV TL0, #0E7H SETB TR0 ;啟動T0,6.3 定時器的4種模式及應用,LOOP2: JBC TF0, L2 ;查詢50s時間到?到轉(zhuǎn)L2 SJMP

18、 LOOP2 ;時間未到,轉(zhuǎn)LOOP2,繼續(xù)查詢,例6-4 :已知89C51單片機的fOSC=12MHz,采用T1 定時模式2。編寫由P1.0和P1.1引腳分別 輸出周期為2ms和500s的方波。,解:(1)輸出及模式的確定,6.3 定時器的4種模式及應用,500s,2ms,P1.1,T1采用定時工作方式模式2,模式字為( TMOD )= 20H,P1.0,(2)設(shè)置定時器初值X,6.3 定時器的4種模式及應用,T1采用模式2作250s定時的初值:,(28X)12/(12 106) =25010-6 s X=256 25010-612 106 /12 =6=06H,T1的低8位為06H,高8位為06H,(3)主程序清單 MOV R2, #04H ;R2為計數(shù)器,計1ms,初值為4 CLR P1.0 ;P1.0,P1.1輸出低電平 CLR P1.1

溫馨提示

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

最新文檔

評論

0/150

提交評論