第13講單片機定時器_第1頁
第13講單片機定時器_第2頁
第13講單片機定時器_第3頁
第13講單片機定時器_第4頁
第13講單片機定時器_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第13講單片機定時器亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程從軟件延時的缺點說起前面講過的“用若干次空循環(huán)實現(xiàn)延時”生活中的例子軟件延時的缺點:延時過程中,CPU時間被占用,無法進行其他任務(wù),導(dǎo)致系統(tǒng)效率降低。延時時間越長,該缺點便越明顯,因此軟件延時只適用于短暫延時,或簡單項目。亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時/計數(shù)器單片機中有多個小鬧鐘,可以幫助我們實現(xiàn)延時,這些小鬧鐘就是“定時器”。本講只講T0,每個定時/計數(shù)器既可以實現(xiàn)定時功能,也可以實現(xiàn)計數(shù)功能,本講只講定時功能。T0可以工作在4種定時器模式下。

2、亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時/計數(shù)器0的工作原理亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程在定時方式1下,定時/計數(shù)器0的核心是一個16位寬的由計數(shù)脈沖觸發(fā)的按遞增規(guī)律(即累加方式)工作的循環(huán)累加計數(shù)器(TH0+TL0)。從預(yù)先設(shè)定的初始值開始,每來一個計數(shù)脈沖就加1,當(dāng)加到計數(shù)器為全1時,再輸入一個脈沖,就會發(fā)生溢出現(xiàn)象,計數(shù)器回零,同時產(chǎn)生溢出中斷請求信號(TF0置1)。如果定時/計數(shù)器工作于定時模式,則表示定時時間已到。80C51的定時/計數(shù)器實現(xiàn)定時功能,比較方便的辦法是利用單片機內(nèi)部的定時/計數(shù)

3、器。也可以采用下面三種方法:軟件定時:軟件定時不占用硬件資源,但占用了CPU時間,降低了CPU的利用率。采用時基電路定時:例如采用555電路,外接必要的元器件(電阻和電容),即可構(gòu)成硬件定時電路。但在硬件連接好以后,定時值與定時范圍不能由軟件進行控制和修改,即不可編程。采用可編程芯片定時:這種定時芯片的定時值及定時范圍很容易用軟件來確定和修改,此種芯片定時功能強,使用靈活。在單片機的定時/計數(shù)器不夠用時,可以考慮進行擴展。亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時器溢出亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程什么是溢

4、出?任何一個計數(shù)范圍有限的系統(tǒng),均存在溢出現(xiàn)象。系統(tǒng)的可表達數(shù)的個數(shù),稱為模。定時器溢出時會導(dǎo)致定時器溢出中斷請求,和該中斷是否使能無關(guān)。亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時器/計數(shù)器的結(jié)構(gòu)及工作原理亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時/計數(shù)器的結(jié)構(gòu)和工作原理亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程一、定時/計數(shù)器的結(jié)構(gòu)定時/計數(shù)器的實質(zhì)是加1計數(shù)器(16位),由高8位和低8位兩個寄存器組成。TMOD是定時/計數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制

5、寄存器,控制T0、T1的啟動和停止及設(shè)置溢出標(biāo)志。定時/計數(shù)器的工作原理亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程 加1計數(shù)器輸入的計數(shù)脈沖有兩個來源,一個是由系統(tǒng)的時鐘振蕩器輸出脈沖經(jīng)12分頻后送來;一個是T0或T1引腳輸入的外部脈沖源。每來一個脈沖計數(shù)器加1,當(dāng)加到計數(shù)器為全1時,再輸入一個脈沖就使計數(shù)器回零,且計數(shù)器的溢出使TCON中TF0或TF1置1,向CPU發(fā)出中斷請求(定時/計數(shù)器中斷允許時)。如果定時/計數(shù)器工作于定時模式,則表示定時時間已到;如果工作于計數(shù)模式,則表示計數(shù)值已滿。可見,由溢出時計數(shù)器的值減去計數(shù)初值才是加1計數(shù)器的計數(shù)值。亞博

6、科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程 設(shè)置為定時器模式時,加1計數(shù)器是對內(nèi)部機器周期計數(shù)(1個機器周期等于12個振蕩周期,即計數(shù)頻率為晶振頻率的1/12)。計數(shù)值N乘以機器周期Tcy就是定時時間t 。 設(shè)置為計數(shù)器模式時,外部事件計數(shù)脈沖由T0或T1引腳輸入到計數(shù)器。在每個機器周期的S5P2期間采樣T0、T1引腳電平。當(dāng)某周期采樣到一高電平輸入,而下一周期又采樣到一低電平時,則計數(shù)器加1,更新的計數(shù)值在下一個機器周期的S3P1期間裝入計數(shù)器。由于檢測一個從1到0的下降沿需要2個機器周期,因此要求被采樣的電平至少要維持一個機器周期。當(dāng)晶振頻率為12MHz時,

7、最高計數(shù)頻率不超過1/2MHz,即計數(shù)脈沖的周期要大于2 s。定時/計數(shù)器的控制亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程80C51單片機定時/計數(shù)器的工作由兩個特殊功能寄存器控制。TMOD用于設(shè)置其工作方式;TCON用于控制其啟動和中斷申請。一、工作方式寄存器TMOD工作方式寄存器TMOD用于設(shè)置定時/計數(shù)器的工作方式,低四位用于T0,高四位用于T1。其格式如下:亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程GATE:門控位。GATE0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數(shù)器工作;GATA1時,

8、要用軟件使TR0或TR1為1,同時外部中斷引腳或也為高電平時,才能啟動定時/計數(shù)器工作。即此時定時器的啟動多了一條件。 :定時/計數(shù)模式選擇位。 0為定時模式; =1為計數(shù)模式。M1M0:工作方式設(shè)置位。定時/計數(shù)器有四種工作方式,由M1M0進行設(shè)置。控制寄存器TCON亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程TCON的低4位用于控制外部中斷,已在前面介紹。TCON的高4位用于控制定時/計數(shù)器的啟動和中斷申請。其格式如下:uTF1(TCON.7):T1溢出中斷請求標(biāo)志位。T1計數(shù)溢出時由硬件自動置TF1為1。CPU響應(yīng)中斷后TF1由硬件自動清0。T1工作時,

9、CPU可隨時查詢TF1的狀態(tài)。所以,TF1可用作查詢測試的標(biāo)志。TF1也可以用軟件置1或清0,同硬件置1或清0的效果一樣。uTR1(TCON.6):T1運行控制位。TR1置1時,T1開始工作;TR1置0時,T1停止工作。TR1由軟件置1或清0。所以,用軟件可控制定時/計數(shù)器的啟動與停止。uTF0(TCON.5):T0溢出中斷請求標(biāo)志位,其功能與TF1同。uTR0(TCON.4):T0運行控制位,其功能與TR1類同。定時/計數(shù)器的工作方式亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程一、方式一、方式0 方式方式0為為13位計數(shù)位計數(shù),由,由TL0的低的低5位(高位

10、(高3位未用)和位未用)和TH0的的8位組成。位組成。TL0的低的低5位溢出時向位溢出時向TH0進位,進位,TH0溢出時,溢出時,置位置位TCON中的中的TF0標(biāo)志,向標(biāo)志,向CPU發(fā)出中斷請求。發(fā)出中斷請求。亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程二、方式二、方式1 方式方式1的計數(shù)位數(shù)是的計數(shù)位數(shù)是16位,由位,由TL0作為低作為低8位、位、TH0作為高作為高8位,組成了位,組成了16位加位加1計數(shù)器計數(shù)器 。計數(shù)個數(shù)與計數(shù)初值的關(guān)系為:計數(shù)個數(shù)與計數(shù)初值的關(guān)系為: 16X=2 -N亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套

11、視頻教程三、方式三、方式2 方式方式2為自動重裝初值的為自動重裝初值的8位計數(shù)方式。位計數(shù)方式。 計數(shù)個數(shù)與計數(shù)初值的關(guān)系為計數(shù)個數(shù)與計數(shù)初值的關(guān)系為: 8X=2 -N亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程四、方式四、方式3 方式方式3只適用于定時只適用于定時/計數(shù)器計數(shù)器T0,定時器定時器T1處于方式處于方式3時相當(dāng)時相當(dāng)于于TR1=0,停止計數(shù)。,停止計數(shù)。 工作方式工作方式3將將T0分成為兩個獨立的分成為兩個獨立的8位計數(shù)器位計數(shù)器TL0和和TH0 。 亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程定時器操作步驟:選擇工作方式(設(shè)置M1,M0)選擇控制方式(設(shè)置GATE)選擇定時器還是計數(shù)器模式(設(shè)置C/T)給定時/計數(shù)器賦初值(設(shè)置THx和TLx)開啟定時器中斷(設(shè)置ET0或ET1)開啟總中斷(設(shè)置EA)打開計數(shù)器(設(shè)置TR1或TR0)亞博科技亞博科技 51單片機開發(fā)板單片機開發(fā)板28課配套視頻教程課配套視頻教程/* 函數(shù)名 : TimerConfiguration()* 函數(shù)功能 : 配置定時器值* 輸入 : 無* 輸出 : 無*/ void TimerConfiguration() TMOD = 0 x01; /定時器0選擇工作方式1 TH0 = 0 x3C; /設(shè)置初始值 TL0 = 0 x0

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論