第五章:MCS-51單片機定時與計數(shù)器_第1頁
第五章:MCS-51單片機定時與計數(shù)器_第2頁
第五章:MCS-51單片機定時與計數(shù)器_第3頁
第五章:MCS-51單片機定時與計數(shù)器_第4頁
第五章:MCS-51單片機定時與計數(shù)器_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1單片機原理與接口技術單片機原理與接口技術韋必忠韋必忠桂林電子科技大學建筑與交通工程學院桂林電子科技大學建筑與交通工程學院Email:MCS-51 單片機定時器單片機定時器/計數(shù)器計數(shù)器35.1定時器定時器/計數(shù)器概述計數(shù)器概述軟件定時軟件定時:執(zhí)行一個循環(huán)程序進行時間延遲。定時準確,不需要外加硬件電路,但增加CPU開銷。硬件定時硬件定時:通過硬件電路實現(xiàn)定時,不占用CPU時間,但使用不夠方便。可編程定時器定時可編程定時器定時:通過對系統(tǒng)時鐘脈沖時鐘脈沖的計數(shù)實現(xiàn)定時。計數(shù)值通過程序設定,定時準確,使用方便靈活。 計數(shù)與定時:計數(shù)與定時:定時器定時器/計數(shù)器實際上是計數(shù)器實際上是加加1計數(shù)器計

2、數(shù)器。當。當它對外部事件進行計數(shù)時,由于頻率不固定,此時它對外部事件進行計數(shù)時,由于頻率不固定,此時稱之為稱之為計數(shù)器計數(shù)器。當它對內(nèi)部固定頻率的機器周期進。當它對內(nèi)部固定頻率的機器周期進行計數(shù)時,稱之為行計數(shù)時,稱之為定時器定時器。計數(shù)器容量:計數(shù)器容量:8051單片機有兩個計數(shù)器,分別稱之為單片機有兩個計數(shù)器,分別稱之為T0和和T1,這兩個計數(shù)器分別是由兩個,這兩個計數(shù)器分別是由兩個8位的位的RAM單單元組成,即每個計數(shù)器都是元組成,即每個計數(shù)器都是16位的計數(shù)器,最大計位的計數(shù)器,最大計數(shù)量是數(shù)量是65536.定時定時/ /計數(shù)器的結構和工作原理計數(shù)器的結構和工作原理 (一)、定時(一)

3、、定時/計數(shù)器的結構計數(shù)器的結構 定時定時/計數(shù)器的實質是加計數(shù)器的實質是加1計數(shù)器(計數(shù)器(16位),由高位),由高8位和低位和低8位兩個寄存器組成。位兩個寄存器組成。TMOD是定時是定時/計數(shù)器的工作方式寄存計數(shù)器的工作方式寄存器,確定工作方式和功能;器,確定工作方式和功能;TCON是控制寄存器,控制是控制寄存器,控制T0、T1的啟動和停止及設置溢出標志的啟動和停止及設置溢出標志。 (二二)、定時、定時/計數(shù)器的工作原理計數(shù)器的工作原理計數(shù)次數(shù)和時間之間的確十分相關;只要計數(shù)脈沖的間隔計數(shù)次數(shù)和時間之間的確十分相關;只要計數(shù)脈沖的間隔相等,則計數(shù)值就代表了時間的流逝;單片機的晶振經(jīng)過相等,

4、則計數(shù)值就代表了時間的流逝;單片機的晶振經(jīng)過12分頻后獲得一個脈沖源,如果晶振頻率分頻后獲得一個脈沖源,如果晶振頻率12MHZ,則每秒,則每秒產(chǎn)生產(chǎn)生1M脈沖,一個脈沖就是脈沖,一個脈沖就是1微秒,所以計數(shù)脈沖的間隔與微秒,所以計數(shù)脈沖的間隔與晶振頻率有關。晶振頻率有關。 (二二)、定時、定時/計數(shù)器的工作原理計數(shù)器的工作原理 加加1計數(shù)器計數(shù)器輸入的計數(shù)脈沖有兩個來源輸入的計數(shù)脈沖有兩個來源:(1)由系統(tǒng)的時鐘振蕩器輸出脈沖經(jīng))由系統(tǒng)的時鐘振蕩器輸出脈沖經(jīng)12分頻后送來;分頻后送來;(2)另一個是)另一個是T0或或T1引腳輸入的外部脈沖源。引腳輸入的外部脈沖源。 每來一個脈沖計數(shù)器加每來一個

5、脈沖計數(shù)器加1,當加到計數(shù)器為全,當加到計數(shù)器為全1時,再輸入一時,再輸入一個脈沖就使計數(shù)器回零,且計數(shù)器的個脈沖就使計數(shù)器回零,且計數(shù)器的溢出溢出使使TCON中中TF0或或TF1置置1,向,向CPU發(fā)出中斷請求(定時發(fā)出中斷請求(定時/計數(shù)器中斷允許時)。計數(shù)器中斷允許時)。如果定時如果定時/計數(shù)器工作于定時模式,則表示定時時間已到;如計數(shù)器工作于定時模式,則表示定時時間已到;如果工作于計數(shù)模式,則表示計數(shù)值已滿。果工作于計數(shù)模式,則表示計數(shù)值已滿。 可見,由溢出時可見,由溢出時計數(shù)器的值計數(shù)器的值減去減去計數(shù)初值計數(shù)初值才是加才是加1計數(shù)器計數(shù)器的的計數(shù)值計數(shù)值。 v設置為定時器模式時:設

6、置為定時器模式時:加加1計數(shù)器是對內(nèi)部機器周期計數(shù)器是對內(nèi)部機器周期計數(shù)(計數(shù)(1個機器周期等于個機器周期等于12個振蕩周期,即計數(shù)頻率個振蕩周期,即計數(shù)頻率為晶振頻率的為晶振頻率的1/12)。)。v所以:計數(shù)值所以:計數(shù)值N乘以機器周期乘以機器周期Tcy就是定時時間就是定時時間t 。一旦振蕩周期確定,機器周期亦確定一旦振蕩周期確定,機器周期亦確定。v設置為計數(shù)器模式時:設置為計數(shù)器模式時:外部事件計數(shù)脈沖由外部事件計數(shù)脈沖由T0或或T1引腳輸入到計數(shù)器。在每個機器周期的引腳輸入到計數(shù)器。在每個機器周期的S5P2期間采樣期間采樣T0、T1引腳電平。當某周期采樣到一高電平輸入,引腳電平。當某周期

7、采樣到一高電平輸入,而下一周期又采樣到一低電平時,則計數(shù)器加而下一周期又采樣到一低電平時,則計數(shù)器加1,更,更新的計數(shù)值在新的計數(shù)值在下一個機器周期下一個機器周期的的S3P1期間裝入計數(shù)器。期間裝入計數(shù)器。由于檢測一個從由于檢測一個從1到到0的下降沿需要的下降沿需要2個機器周期,因個機器周期,因此要求被采樣的電平至少要維持一個機器周期。最高此要求被采樣的電平至少要維持一個機器周期。最高計數(shù)頻率是晶振頻率的計數(shù)頻率是晶振頻率的1/24。v當晶振頻率為當晶振頻率為12MHz時時,最高計數(shù)頻率不超過,最高計數(shù)頻率不超過1/2MHz,即計數(shù)脈沖的周期要大于,即計數(shù)脈沖的周期要大于2 s。 11定時器定

8、時器/計數(shù)器的定時和計數(shù)功能計數(shù)器的定時和計數(shù)功能MCS-51系列單片機有兩個可編程定時器/計數(shù)器:T0、T1,16位寄存器,加法計數(shù)結構加法計數(shù)結構,地址為:T0(TH0,TL0):8CH,8AHT1(TH1,TL1):8DH,8BH特殊功能寄存器特殊功能寄存器每個寄存器(T0,T1)都具有定時和計數(shù)功能12MCS-51定時/計數(shù)器核心是一個16位計數(shù)器(寄存器)。加加1 1信號來源信號來源:外部計數(shù)脈沖外部計數(shù)脈沖、內(nèi)部時鐘脈沖內(nèi)部時鐘脈沖。信號來源方式:由特殊功能寄存器TMOD設置位 確定。 ,計數(shù)方式(外部); ,定時方式(內(nèi)部)。0T/C 1T/C T/CT/C 80C51單片機定時

9、單片機定時/計數(shù)器的工作由兩個特殊功能計數(shù)器的工作由兩個特殊功能寄存器控制。寄存器控制。TMOD:用于設置其工作方式;用于設置其工作方式;TCON:用于控制其啟動和中斷申請。用于控制其啟動和中斷申請。n5.2 MCS-515.2 MCS-51定時定時/ /計數(shù)器控制與狀態(tài)寄存器計數(shù)器控制與狀態(tài)寄存器14工作方式控制寄存器工作方式控制寄存器TMOD(狀態(tài)寄存器)(狀態(tài)寄存器)GATETC/1M0M0M1MTC/GATE0計計數(shù)數(shù)器器定定時時 /1計計數(shù)數(shù)器器定定時時 /76543210字節(jié)地址字節(jié)地址89H(不可以位尋址)(不可以位尋址)15M1M0為操作方式選擇位為操作方式選擇位1110010

10、03210方式方式方式方式方式方式方式方式無無效效位位計計數(shù)數(shù)器器,分分成成兩兩個個位位計計數(shù)數(shù)器器自自動動再再裝裝入入位位計計數(shù)數(shù)器器位位計計數(shù)數(shù)器器1T80T816130M1M操作方式操作方式功能說明功能說明 :選擇定時:選擇定時/計數(shù)器模式計數(shù)器模式 ,計數(shù)模式; ,定時模式GATE:選通控制:選通控制GATE=0,選通, 通過TRX啟動定時器。GATE=1, 端口高電平,通過TRX啟動定時器。XINT0T/C 1T/C T/C16啟停與中斷控制寄存器啟停與中斷控制寄存器TCON(控制寄存器)(控制寄存器) 字節(jié)地址88HTCON由定時由定時/計數(shù)器和中斷系統(tǒng)合用。計數(shù)器和中斷系統(tǒng)合用。

11、TR0:定時:定時/計數(shù)器計數(shù)器0啟??刂莆粏⑼?刂莆挥绍浖刂贫〞r/計數(shù)器0的啟動/停止。TR1:定時:定時/計數(shù)器計數(shù)器1啟??刂莆粏⑼?刂莆挥绍浖刂贫〞r/計數(shù)器1的啟動/停止。17TF0:定時:定時/計數(shù)器計數(shù)器0中斷請求標志位中斷請求標志位當定時/計數(shù)器0計數(shù)回0時,由內(nèi)部硬件置位TF0(TF0=1),請求中斷。中斷服務程序一旦執(zhí)行,硬件自動清0(TF0=0)。TF1:定時:定時/計數(shù)器計數(shù)器1中斷請求標志位中斷請求標志位當定時/計數(shù)器1計數(shù)回0時,由內(nèi)部硬件置位TF1(TF1=1),請求中斷。中斷服務程序一旦執(zhí)行,硬件自動清0(TF1=0)。18IE0:外部中斷:外部中斷0中斷請求

12、標志中斷請求標志IT0=1, 負跳變觸發(fā)中斷,硬件置IE0=1,當轉向中斷服務程序后,硬件自動清IE0=0。IT0=0, 低電平觸發(fā)中斷。硬件置IE0=1,當轉向中斷服務程序后,硬件自動清IE0=0。IE1:外部中斷:外部中斷1中斷請求標志中斷請求標志IT1=1, 負跳變觸發(fā)中斷,硬件置IE1=1,當轉向中斷服務程序后,硬件自動清IE1=0。IT1=0, 低電平觸發(fā)中斷。硬件置IE1=1,當轉向中斷服務程序后,硬件自動清IE1=0。0INT0INT1INT1INT19IT0:外部中斷:外部中斷0觸發(fā)方式控制位觸發(fā)方式控制位軟件設置。IT0=1,外部中斷 ,發(fā)生10跳變,產(chǎn)生中斷請求,向主機申請

13、中斷。IT0=0,則 端口低電平觸發(fā)中斷。IT1:外部中斷:外部中斷1觸發(fā)方式控制位觸發(fā)方式控制位軟件設置。IT1=1,外部中斷 ,發(fā)生10跳變,產(chǎn)生中斷請求,向主機申請中斷。IT1=0,則 端口低電平觸發(fā)中斷。以上后四項用于中斷系統(tǒng)。TCON可位尋址,其位地址為可位尋址,其位地址為88H8FH。1INT0INT0INT1INT205.3 定時定時/計數(shù)器的工作方式(工作模式)計數(shù)器的工作方式(工作模式)設置 (TMOD寄存器)選擇定時模式還是計數(shù)模式;對M1M0的設置,用于選擇T0、T1的四種操作(工作)方式。四種工作模式:即模式四種工作模式:即模式0、模式、模式1、模式、模式2、模式、模式

14、3。 TL0、TH0,TL1、TH1兩對定時/計數(shù)器T/C21(1)定時)定時/計數(shù)方式計數(shù)方式0 (13位計數(shù)器)以定時/計數(shù)器0(T0)為例TH0全部8位,TL0低5位構成13位定時/計數(shù)器。當 時(定時方式),開關接至振蕩12分頻輸出;當 時(計數(shù)方式),開關接通T0(P3.4)當計數(shù)脈沖發(fā)生負跳變計數(shù)器加1。0T/C 1T/C 22)( bit80TH)( bit50TL0TF&1 1分頻分頻120=TC/1=TC/).(43P0T0TRGATE0INT).(23POSC控制控制中中斷斷請請求求計計數(shù)數(shù)示示意意圖圖方方式式位位定定時時 /130nGATE:看圖,選擇了定時或計數(shù)工作方式

15、后,定時/計數(shù)脈沖不一定能到達計數(shù)器端,中間還有一個開關,如果這個開關不合上,計數(shù)脈沖就沒法過去。那開關什么時候合上呢?有兩種情況:nGATE=0時,GATE非后是1,進入或門,或門總是輸出1(與或門的另一個輸入端INT0無關),在這種情況下,開關打開或者合上只取決于TR0,只要TR0=1,開關就合上,計數(shù)脈沖就得以暢通無阻,如TR0=0則開關打開,計數(shù)脈沖無法通過。因此,定時/計數(shù)器是否工作,只取決于TR0。nGATE=1時,計數(shù)脈沖通路上的開關不僅要由TR0來控制,而且還要受到INT0引腳的控制,只有TR0=1,且INT0引腳也是高電平,開關才合上,計數(shù)脈沖才能通過。2324定時定時/計數(shù)

16、方式計數(shù)方式1 (16位計數(shù)器)邏輯結構和方式0完全一樣,只是TL是8位計數(shù)器。計數(shù)范圍165536如晶振6MHz,最小定時時間為:2s(機器周期)最大定時時間為:131ms(大約)。n該模式對應的是一個16位的定時器/計數(shù)器,如圖5-5所示。其結構與操作幾乎與模式0完全相同,惟一的差別是:在模式1中,寄存器TH0和TL0是以全部16位參與操作。用于定時工作方式時,定時時間為nt=(216-T0初值)振蕩周期12n用于計數(shù)工作方式時,計數(shù)最大長度為21665536個外部脈沖。 圖5-5 定時器/計數(shù)器T0工作模式1邏輯結構框圖 26定時定時/計數(shù)方式計數(shù)方式2 (自動再裝入8位計數(shù)器)THx,

17、TLx相互獨立(x=0,1)。TLx作為8位計數(shù)器,THx是初值寄存器。TLx溢出后,置TFx申請中斷。THx初值重新裝入TLx。只需通過軟件設置一次,啟動后無限次定時/計數(shù)運行。(自動進行下一次)n模式2把TL0(或TL1)設置成一個可以自動重裝載的8位定時器/計數(shù)器,如圖5-6所示。TL0計數(shù)溢出時,不僅使溢出中斷標志位TF0置1,而且還自動把TH0中的內(nèi)容重新裝載到TL0中。這時,16位計數(shù)器被拆成兩個,TL0用作8位計數(shù)器,TH0用以保存初值。 n用于定時工作方式時,其定時時間(TF0溢出周期)為nt=(28-TH0初值)振蕩周期12n用于計數(shù)工作方式時,最大計數(shù)長度為28=256個外

18、部脈沖。 圖5-6 定時器/計數(shù)器T0工作模式2邏輯結構框圖 28定時定時/計數(shù)方式計數(shù)方式3 (T0分成兩個8位計數(shù)器,T1無效)將T0分成兩個獨立的8位計數(shù)器。TL0組成完整的8位定時/計數(shù)器;既能定時,又能計數(shù)。TH0只能組成8位定時器(內(nèi)部脈沖)。只能定時。TL0占用T0全部控制信號及中斷請求標志位(TR0、TF0等)TH0只能借用TR1和TF1。P3.5口(T1外部計數(shù)脈沖輸入口)不能占用。n工作模式3對T0和T1大不相同。若將T0設置為模式3,TL0和TH0被分成為兩個相互獨立的8位計數(shù)器,如圖5-7所示。 圖5-7 定時器/計數(shù)器T0工作模式3邏輯結構框圖 305.4 5.4 定

19、時定時/ /計數(shù)器應用計數(shù)器應用基本步驟:基本步驟:工作方式控制字(TMOD)的設置;計數(shù)初值的計算并裝入THx、TLx;中斷允許位ETx、EA的設置,使主機開放中斷;啟/停位TRx的設置。31計數(shù)初值的確定計數(shù)初值的確定在方式0下,當為計數(shù)方式時,計數(shù)值范圍18192(213 )在方式1下,當為計數(shù)方式時,計數(shù)值范圍165536(216 )在方式2下,當為計數(shù)方式時,計數(shù)值范圍1256(28 )32當計數(shù)時,采用預置數(shù)預置數(shù)的方法,比如我們需要計數(shù)100次,那就先放入65436,再來100個脈沖,就到65536了。定時時間:(2n 計數(shù)初值)*機器周期晶振機器周期12機器周期機器周期定時時間

20、定時時間計數(shù)初值計數(shù)初值-n2=33在方式0下最小定時時間為:2s最大定時時間為:16384s(8192*2)在方式1下最小定時時間為:2s最大定時時間為:131ms(65536*2)如晶振周期6MHz,機器周期為2s。n思路:思路:需要采用軟件計數(shù)器的概念,先用定時/計數(shù)器做一個(比如50毫秒)的定時器,定時時間到了以后不要立即執(zhí)行相關操作(比如輸出),而是將軟件計數(shù)器中的值加1,如果軟件計數(shù)器計到了20,那定時時間就是20*50=1000毫秒了。34如何實現(xiàn)定時如何實現(xiàn)定時1S或者其它定時時間?或者其它定時時間?35例題例題:生成周期為500 s的等寬正方波。機器晶振6MHz。使用T1以方式0工作,由P1.0輸出500 s機器周期:2 s。定時時間250 s。以250 s為周期在P1.0端交替輸出高低電平。36機器周期機器周期定時時間定時時間計數(shù)初值計數(shù)初值-n2=8067125819222502X13 8067-4096=3971 13971-2048=1923 11923-1024=899 1899-512=387 1387-256=131 1131-128=3 164 032 01

溫馨提示

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

評論

0/150

提交評論