版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、定時器定時器數(shù)字鐘要準確持續(xù)地走時,1秒鐘是最小的計時單位,60秒種是1分鐘,60分鐘時是一個小時,24小時就是1天了。能得到精確的1秒鐘,就會得到精確的1分鐘、1個小時和1天了,顯而易見,得到精確的1秒鐘是數(shù)字鐘準確持續(xù)走時的核心問題。那么在51單片機內(nèi)部如何得到精確的1秒鐘呢,在第一章中的學習時,我們曾將介紹過delayms()這個函數(shù)可以實現(xiàn)延時,利用它可以得到1秒鐘,但是這個延時函數(shù)不夠精確,實際上51單片機內(nèi)部已經(jīng)集成了定時器
2、,利用定時器我們可以得到所需要的精確的1秒鐘。在利用定時器完成數(shù)字鐘走時之前,我們先來系統(tǒng)地學習一下定時器的原理。(一)定時器的原理(一)定時器的原理(1)定時與計數(shù)的引入)定時與計數(shù)的引入在講述定時器的原理之前,我們先看一下圖一中的圖片。這是一個水龍頭向水盆滴水的畫面,在畫面中,水龍頭由于沒有關(guān)緊,水一滴一滴地滴向臉盆,盆的容量是有限的,水終會在某一個時刻從臉盆中溢出來。假設(shè)一開始水盆沒有水,10000滴水滴恰好可以把水盆裝滿,恰好是
3、計數(shù)了10000次。如果我們計數(shù)100次怎么辦呢?我們應(yīng)該首先向水盆中預(yù)先裝下了9900滴水,然后讓水龍頭開始滴水,等到水盆中的水溢出了,自然是計數(shù)了100次。如果水滴的速度是恒定的,1秒一滴水滴,那么計數(shù)也就變成了計時了,水盆中沒有水,要讓水盆中的水裝滿,那得需要10000秒的時間。通過上面地分析,我們發(fā)現(xiàn)只要保持水滴的速度是恒定的,定時與計數(shù)在本質(zhì)上是一回事。51單片機的定時器計數(shù)器與上面講述的水盆滴水的例子類似。在51單片機內(nèi)部,
4、信號源產(chǎn)生的脈沖可以看成是水滴滴水;由兩個8位的RAM(共16位)構(gòu)成的存儲單元可以看成是水盆;水龍頭向水盆滴水的過程,在51單片機內(nèi)部,可以看成是信號源每產(chǎn)生一個脈沖,就向16位的RAM加1這樣一個過程;16位的RAM中的數(shù)據(jù)不斷加1,直到65536,再加1,RAM中的數(shù)據(jù)就會溢出,可以類似水盆中的水滿了,再加入1滴水滴,水就會溢出。通過這樣的類比,我們可圖1低四位用于定時計數(shù)器0的控制,結(jié)合圖2定時計數(shù)器0的內(nèi)部結(jié)構(gòu),我們可以看出,
5、GATE參與了啟動開關(guān)的選擇,稱為門控位。CT是用來選擇定時還是計數(shù),M1、M0是我們下面要介紹的4種工作方式的選擇位。圖4是TCON寄存器的配置,也被分成了兩份,前四位用于定時計數(shù)器,后四位用于中斷。而TF0在工作原理中已提到了,當計數(shù)溢出后T0就由0變?yōu)?。TR0也參與了啟動開關(guān)的選擇。稱為運行控制位。(4)定時定時計數(shù)器的四種工作方式計數(shù)器的四種工作方式工作方式工作方式0:定時器計數(shù)器的工作方式0稱之為13位定時計數(shù)方式。它由TL
6、(10)的低5位和TH(01)的8位構(gòu)成13位的計數(shù)器,此時TL(10)的高3位未用。由于方式0和方式1使用起來差不多,方式1計數(shù)范圍是16位,所以這里不介紹方式0的使用了。工作方式工作方式1:M1M0:定時計數(shù)器一共有四種工作方式,就是用M1M0來控制的,2位正好是四種組合。工作在方式0的時候,M1M0=00。工作于方式1的時候,M1M0=01。CT:定時或者計數(shù)的選擇位,CT=0,信號源選擇晶振的12分頻,計時;CT=1,信號源選擇
7、外接脈沖,計數(shù)。GATE:從圖2中我們可以看到,選擇了定時或者計數(shù)工作方式后,還要閉合啟動開關(guān),這樣計數(shù)脈沖才會送到后面的RAM中,而啟動開關(guān)的閉合不僅由運行控制位TR0決定,還有門控位GATE決定。GATE=0,分析一下邏輯,GATE非后是1,進入或門,或門總是輸出1,和或門的另一個輸入端INT1無關(guān),在這種情況下,開關(guān)的打開、合上只取決于TR1,只要TR1是1,開關(guān)就合上,而如果TR1等于0則開關(guān)打開,計數(shù)脈沖無法通過,因此定時計數(shù)
8、是否工作,只取決于TR1。GATE=1,在此種情況下,計數(shù)脈沖通路上的開關(guān)不僅要由TR1來控制,而且還要受到INT1引腳的控制,只有TR1為1,且INT1引腳也是高電平,開關(guān)才合上,計數(shù)脈沖才得以通過。這個特性可以用來測量一個信號的高電平的寬度。工作方式工作方式2:工作在方式2的時候,將M1M0設(shè)為10。在介紹這種方式之前,我們先來看一下在方式1模式下如何連續(xù)地定時1ms:晶振選擇12M,那么計數(shù)脈沖的周期是1us,1ms的定時就是要計
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論