版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、北京交通大學1本章主要內容本章主要內容定時定時/ /計數器的功能計數器的功能與與定時定時/ /計數器有關的寄存器計數器有關的寄存器定時定時/ /計數器四種工作方式計數器四種工作方式定時器的應用定時器的應用北京交通大學2本章要求:熟練掌握計數本章要求:熟練掌握計數/ /定時編程方法定時編程方法軟件定時軟件定時硬件定時硬件定時可編程定時器定時可編程定時器定時北京交通大學3 TF1 TR1 TF0 TR0TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0GATE C/T M1 M0 GATE C/T M1 M0TCONTMOD TH1 TL1 TH0 TL0
2、CPU圖圖1定時定時/計數器與計數器與TMOD、TCON的結構框圖的結構框圖共有兩個可編程的定時共有兩個可編程的定時/ /計數器計數器T0T0和和T1T1都是都是十六位加法計數器十六位加法計數器結構,分別由結構,分別由TH0TH0、TL0TL0 和和TH1TH1、TL1TL1四個四個8 8位計數器組成位計數器組成每個定時計數器都具有每個定時計數器都具有定時和計數定時和計數兩種功能兩種功能北京交通大學4圖圖 2 2 定時定時/ /計數器的結構框計數器的結構框北京交通大學5功能:對外來脈沖進行計數功能:對外來脈沖進行計數外來計數脈沖加在單片機的兩個信號引腳外來計數脈沖加在單片機的兩個信號引腳T0T
3、0(P3.4P3.4)T1(P3.5T1(P3.5)外部輸入的脈沖在負跳變時觸發(fā)計數外部輸入的脈沖在負跳變時觸發(fā)計數 計數器在每個機器周期的計數器在每個機器周期的S5P2S5P2期間采樣外部輸入信號。期間采樣外部輸入信號。 若一個周期采樣值為若一個周期采樣值為1 1,下一個周期采樣值為,下一個周期采樣值為0 0,則計數,則計數器加器加1 1。 脈沖的頻率最高為振蕩頻率的脈沖的頻率最高為振蕩頻率的1/241/24外部輸入信號的高電平和低電平保持時間大于一個外部輸入信號的高電平和低電平保持時間大于一個機器周期機器周期計數器計滿回零,發(fā)中斷申請計數器計滿回零,發(fā)中斷申請 1.1.計數功能計數功能北京
4、交通大學62.2.定時功能定時功能 計數器的計數來實現計數器的計數來實現 計數脈沖:每個機器周期產生一個計數計數脈沖:每個機器周期產生一個計數脈沖。即計數頻率為振蕩頻率的脈沖。即計數頻率為振蕩頻率的1/121/12。 根據計數器的預置值計算出定時時間。根據計數器的預置值計算出定時時間。按定時時間的要求,計算出計數器的預置按定時時間的要求,計算出計數器的預置值。值。北京交通大學7二、二、定時定時/ /計數器的方式和控制寄存器計數器的方式和控制寄存器 1.1.定時器控制定時器控制寄存器(寄存器(TCONTCON) 控制方式:控制方式:外部中斷控制與定時控制外部中斷控制與定時控制。 定時控制功能:定
5、時控制功能: 定時器在溢出時,設定標志位定時器在溢出時,設定標志位(TFx)(TFx) 控制定時器的運行或停止等控制定時器的運行或停止等(TRx)(TRx)北京交通大學8(88H)TF1 TR1TF0 TR0 IE1 IT1 IE0 IT0 8F 8E 8D 8C 8B 8A 89 88INT0觸發(fā)方式觸發(fā)方式0:電平觸發(fā)電平觸發(fā)(低低)1:邊沿觸發(fā)邊沿觸發(fā)(下跳沿下跳沿)INT0請求標志請求標志0:無請求:無請求(硬件置位或清除)硬件置位或清除)1:有請求:有請求INT1觸發(fā)觸發(fā)請求標志請求標志用于定時用于定時/計數器計數器位地址外部中斷外部中斷北京交通大學9TF0(TF1):TF0(TF1
6、):為為T0(T1)T0(T1)定時器溢出中斷標志位定時器溢出中斷標志位當當T0(T1)T0(T1)計數溢出時計數溢出時, ,由硬件置位由硬件置位, ,并在允許中斷的并在允許中斷的情況下情況下, ,發(fā)出中斷請求信號。發(fā)出中斷請求信號。當當CPUCPU響應中斷轉向中斷服務程序(響應中斷轉向中斷服務程序(000BH000BH,001BH001BH)時時, ,由硬件由硬件自動將該位清自動將該位清0 0。TR0(TR1)TR0(TR1):為:為T0(T1)T0(T1)運行控制位運行控制位 當當TR0(TR1)=1TR0(TR1)=1時啟動時啟動T0(T1);T0(T1); TR0(TR1)=0 TR0
7、(TR1)=0時關閉時關閉T0(T1)T0(T1) 該位由軟件進行設置。該位由軟件進行設置。 復位時復位時TCONTCON清零清零北京交通大學10 用于控制兩個用于控制兩個定時定時/ /計數計數器的工作方式器的工作方式 高高4 4位定義位定義T1T1, ,低低4 4位定義位定義T0T0 格式格式:GATE C/T M1 M0 GATE C/T M1 M0T0T1GATEGATE:門控位:門控位GATEGATE0 0,以運行控制位,以運行控制位TRxTRx啟動定時器啟動定時器GATEGATE1 1,啟動信號啟動信號=TRxINTx=TRxINTx在沒有外中斷請求信號在沒有外中斷請求信號(INTx
8、=1)(INTx=1)才允許定時器啟動才允許定時器啟動北京交通大學11C/TC/T:定時或計數方式選擇位:C/TC/T0 0,定時工作方式,定時工作方式; ; C/TC/T1,1,計數工作方式。計數工作方式。M1M0M1M0:工作方式選擇位工作方式選擇位: : M1M0 M1M000 00 方式方式0 0:1313位計數(位計數(TL0-4TL0-4、TH0-7)TH0-7) M1M0 M1M00101方式方式1 1:1616位計數位計數 M1M0M1M01010方式方式2 2:8 8位計數位計數 自動裝入計數器初值功能自動裝入計數器初值功能 M1M0M1M01111方式方式3 3:T0T0分
9、為兩個分為兩個8 8位計數器位計數器 TL0TL0允許作為定時或計數方式允許作為定時或計數方式 TH0 TH0只能作為定時方式只能作為定時方式 北京交通大學12三、三、定時定時/ /計數器工作方式計數器工作方式 1.1.方式方式0 0 方式方式0 0工作邏輯結構圖。工作邏輯結構圖。 12分頻fosc C/T=0 C/T=1 TL1 TH1(5位)(8位)TF1中斷T1控制 GATE INT1+TR11軟件啟動方式軟件啟動方式1/24fosc1/12fosc計數輸入計數輸入中斷TF1ET1EA北京交通大學13 方式方式0 0是是1313位結構的工作方式,其計數器由位結構的工作方式,其計數器由TH
10、1TH1的全的全8 8位和位和TL1TL1的低的低5 5位構成。位構成。TL1TL1的高的高3 3位棄之位棄之不用。不用。 計數方式計數方式: :計數值的范圍為:計數值的范圍為:1-81921-8192(2 21313) 定時方式定時方式: :定時時間定時時間T T的計算公式為:的計算公式為:啟動的條件是:啟動的條件是: (TRx=1)AND(GATE=1 OR INTx=1)TRx=1)AND(GATE=1 OR INTx=1) T T(2 (21313計數初值計數初值x) x) 晶晶振周期振周期 1212或或 T T(2 (21313計數初值計數初值x) x) 機器機器周期周期北京交通大學
11、14 方式方式0 0應用舉例應用舉例 設單片機晶振頻率設單片機晶振頻率fosc=6MHzfosc=6MHz,使用定時器,使用定時器1 1以方式以方式0 0產產生周期為生周期為500us500us的方波的方波,并由,并由P1.0P1.0輸出。以輸出。以查詢查詢或或中斷中斷方式完成。方式完成。解:解:計算定時初值計算定時初值x x 欲產生欲產生500us500us的方波的方波, ,在在P1.0P1.0端以端以250us250us為周期交替輸為周期交替輸出高低電平即可實現。為此出高低電平即可實現。為此, ,定時時間應為定時時間應為250us250us。晶。晶振為振為6MHz,6MHz,則則1 1個機
12、器周期為個機器周期為(12/6)2us(12/6)2us。 則則: : (2(21313x x)* *2uS2uS250uS250uS x x80678067111111001111110000011B(2000H-7DH)00011B(2000H-7DH) 即即: TH1: TH10FCH0FCH,TL1TL103H03H。北京交通大學15步驟步驟:TMODTMOD初始化初始化, ,工作方式選擇工作方式選擇計數器初值計算計數器初值計算( (置位置位EAEA使使CPUCPU開中斷開中斷) )( (置位置位ETxETx允許定時允許定時/ /計數器中斷計數器中斷) )置位置位TRxTRx啟動計數啟
13、動計數北京交通大學16 TMODTMOD初始化初始化 定時器定時器1 1,M1M0=00HM1M0=00H(方式(方式0 0) C/T=0C/T=0(定時)(定時) GATEGATE0 0(以軟件啟動定時器)(以軟件啟動定時器) 不用的位設定為不用的位設定為0 0 TMOD TMOD為初始化為初始化00H00H。 TCONTCON寄存器的寄存器的TR1TR1位來啟動(位來啟動(1 1) 或停止(或停止(0 0)定時器)定時器北京交通大學17查詢方式查詢方式: : MOV TMOD,#00H MOV TMOD,#00H ;T1T1工作在方式工作在方式0 0 SETB TR1SETB TR1 ;啟
14、動;啟動T1T1工作工作LOOP: MOV TL1,#03HLOOP: MOV TL1,#03H MOV TH1,#0FCH MOV TH1,#0FCH ;置定時初值;置定時初值WAIT: JNB TF1,WAITWAIT: JNB TF1,WAIT ;定時未到,循環(huán)等待;定時未到,循環(huán)等待 CLR TF1CLR TF1 ;定時到,清;定時到,清TF1TF1 CPL P1.0CPL P1.0 ;由;由P1.0P1.0輸出,信號取反輸出,信號取反 SJMP LOOP SJMP LOOP ;循環(huán)輸出方波;循環(huán)輸出方波北京交通大學18中斷方式中斷方式: ORG 8000H: ORG 8000H MO
15、V TMOD,#00H ;T1MOV TMOD,#00H ;T1工作在方式工作在方式0 0 MOV TL1,#03HMOV TL1,#03H MOV TH1,#0FCH ; MOV TH1,#0FCH ;置定時初值置定時初值 SETB EA ;SETB EA ;開中斷開中斷 SETB ET1 ;SETB ET1 ;允許允許T1T1中斷中斷 LOOP: SETB TR1 ;LOOP: SETB TR1 ;啟動啟動T1T1工作工作 WAIT: SJMP WAIT ;WAIT: SJMP WAIT ;等待中斷等待中斷 AJMP LOOPAJMP LOOP ORG 001BH ORG 001BH ;T
16、1 ;T1中斷入口中斷入口 LJMP SUB1 ;LJMP SUB1 ;跳至中斷服務程序跳至中斷服務程序SUB1SUB1 ORG 8100HORG 8100H ; ;中斷服務程序中斷服務程序 SUB1: CPL P1.0 SUB1: CPL P1.0 ; ;輸出信號取反輸出信號取反 MOV TL1,#03HMOV TL1,#03H MOV TH1,#0FCH ; MOV TH1,#0FCH ;重置定時初值重置定時初值 RETI RETI ; ;中斷返回中斷返回北京交通大學19 2.2.方式方式1 1 其邏輯電路和工作情況與方式完全相同。所其邏輯電路和工作情況與方式完全相同。所不同的只是組成計數
17、器的位數為不同的只是組成計數器的位數為1616位位。 計數值的范圍為:計數值的范圍為: 1-655361-65536(2 21616) 定時時間的計算公式與方式定時時間的計算公式與方式0 0類似。即類似。即: :TL1TH1TF1計數輸入計數輸入7 0 7 0T T(2(21616計數初值計數初值x)x) 晶晶振周期振周期 1212或或 T T(2(21616計數初值計數初值x)x) 機器機器周期周期北京交通大學20 12分頻fosc C/T=0 C/T=1 TL0(8位)TF0TR0控控制制GATEINT0+TR0 TH0(8位)重重裝裝入入中斷 3.3.方式方式2 2 工作方式工作方式2
18、2邏輯結構如圖邏輯結構如圖。北京交通大學21 該方式把該方式把1616位計數器分為兩部分位計數器分為兩部分 既以既以TL1TL1作計數器作計數器 以以TH1TH1作預置計數器作預置計數器 初始化計數初值分別裝入初始化計數初值分別裝入TL1TL1和和TH1TH1中中 當計數溢出后,由預置寄存器當計數溢出后,由預置寄存器TH1TH1, 以硬件方法自動給計數器以硬件方法自動給計數器TL1TL1重新加載重新加載 最大計數值只能到最大計數值只能到256256,適用于循環(huán)定時或循環(huán)計數應,適用于循環(huán)定時或循環(huán)計數應用用方式方式2 2具有自動重新加載功能,即自動加載計數初值具有自動重新加載功能,即自動加載計
19、數初值北京交通大學22 方式方式2 2應用舉例應用舉例 設單片機晶振頻率設單片機晶振頻率fosc=6MHzfosc=6MHz,使用,使用T0T0以方式以方式2 2產產生周期為生周期為200us200us的方波,并由的方波,并由P1.0P1.0輸出。輸出。 以以查詢查詢或或中斷中斷方式完成方式完成解:解: 計算計數初值計算計數初值x x 晶振為晶振為6MHz6MHz,則,則1 1個機器周期為個機器周期為2us2us。則:。則: (2 28 8x x) 2 2100100,x x206206CEHCEH 即即 TH0TH00CEH0CEH,TL0TL00CEH0CEH。TMODTMOD寄存器初始化
20、寄存器初始化 定時器定時器0 0 M1M0=10HM1M0=10H(方式(方式2 2) C/T=0C/T=0(定時)(定時) GATEGATE0 0 (以軟件啟動定時器)(以軟件啟動定時器) 不用的位設定為不用的位設定為0 0 最后得最后得TMODTMOD應初始化為應初始化為02H02H。北京交通大學23北京交通大學24 用用TCONTCON寄存器的寄存器的TR0TR0位來啟動(位來啟動(1 1)或)或停止(停止(0 0)定時器。)定時器。 程序設計程序設計( (查詢方式查詢方式) ): : MOV TMOD,#02H MOV TMOD,#02H ;T0T0工作在方式工作在方式2 2 MOV
21、TL0,#0CEHMOV TL0,#0CEH MOV TH0,#0CEH MOV TH0,#0CEH ;置定時初值;置定時初值 SETB TR0 SETB TR0 ;啟動;啟動T0T0工作工作WAIT: JNB TF0,WAIT WAIT: JNB TF0,WAIT ;定時未到;定時未到, , 循環(huán)等待循環(huán)等待 CLR TF0CLR TF0 ;定時到,清;定時到,清TF0TF0 CPL P1.0 CPL P1.0 ;由;由P1.0P1.0輸出,信號取反輸出,信號取反 SJMP WAITSJMP WAIT ;循環(huán)輸出方波;循環(huán)輸出方波北京交通大學25中斷方式中斷方式: : MOV TMOD,#0
22、2H MOV TMOD,#02H ;T0T0工作在方式工作在方式2 2 MOV TL0,#0CEHMOV TL0,#0CEH MOV TH0,#0CEH MOV TH0,#0CEH ;置計數初值;置計數初值 SETB EA ; SETB EA ; 開中斷開中斷 SETB ET0 ; SETB ET0 ; 允許允許T0T0中斷中斷 LOOP: LOOP: SETB TR0 SETB TR0 ;啟動;啟動T0T0工作工作 WAIT: WAIT: SJMP $SJMP $ ;等待中斷;等待中斷 CLR TF0 CLR TF0 ;溢出標志位;溢出標志位TF0TF0清清0 0 AJMP LOOP AJM
23、P LOOP ORG 000BHORG 000BH ; ;中斷服務程序中斷服務程序 CPL P1.0 CPL P1.0 ; ;由由P1.0P1.0輸出,信號取反輸出,信號取反 RETI RETI ; ;中斷返回中斷返回北京交通大學26 TH0(8位)TF1T0控制GATEINT0+TR0C/T=0 C/T=11/12fosc1/12fosc TR1中斷 TL0(8位)TF0控制中斷4. 4. 方式方式3 3計數/定時定時北京交通大學27工作在方式工作在方式3 3下的下的T0T0 T T被拆成兩個獨立的被拆成兩個獨立的8 8位計數器。位計數器。 1.TL01.TL0既可以作計數器使用,又可以作定
24、時既可以作計數器使用,又可以作定時器使用,其功能和操作方式與方式或方器使用,其功能和操作方式與方式或方式式1 1完全相同。完全相同。 2.TH02.TH0只能作只能作8 8位定時器使用,并占用了位定時器使用,并占用了T T的中斷資源的中斷資源TR1TR1和和TF1TF1。北京交通大學28 工作在方式工作在方式3 3下的下的T1T1 如果如果T T已工作在方式已工作在方式3 3下下: : T1 T1只能工作在方式只能工作在方式0 02 2下,用于任何不需要中斷控制的場下,用于任何不需要中斷控制的場合合用作串行口的波特率發(fā)生器用作串行口的波特率發(fā)生器 通常只有當通常只有當T1T1用作串行口的波特率
25、發(fā)生器時:用作串行口的波特率發(fā)生器時:T0T0才被定義為方式,以增加一個才被定義為方式,以增加一個8 8位計數器。位計數器。T1T1設定工作方式設定工作方式2 2、計數器初值,、計數器初值,T1T1便可自動運行。便可自動運行。北京交通大學29定時器門控位定時器門控位GATEGATE的應用的應用: :當當GATE=1GATE=1時時,定時器的啟動受外部,定時器的啟動受外部INTxINTx的控制。的控制。 在在TRx=1TRx=1時,若時,若INTx=1INTx=1,則啟動計數;,則啟動計數; 若若INTx=0INTx=0,則停止計數。,則停止計數。 應用:測試外部脈沖的寬度。應用:測試外部脈沖的
26、寬度。北京交通大學30 12分頻fosc C/T=0 C/T=1 TL1 TH1(8位)(8位)TF1中斷T1控制 GATE INT1+TR11軟件啟動方式1/24fosc1/12fosc計數輸入中斷TF1ET1EA北京交通大學31分析:分析:測試時,測試時,1.1.檢測檢測INT1INT1端由低變高時,端由低變高時, TR1=1 TR1=1啟動計數;啟動計數;P3.3(INT1)置置TR1=1TR1=1啟動計數啟動計數停止計數停止計數 2. INT12. INT1再次變低時,計數停止,此時的計數值即再次變低時,計數停止,此時的計數值即為被測為被測正脈沖的寬度正脈沖的寬度。 3.3.由于由于T
27、1T1工作于方式工作于方式1 1,所以可測最大脈寬為,所以可測最大脈寬為65536uS(fosc=12MHz)65536uS(fosc=12MHz); 4.4.由于外部脈寬的最高頻率為由于外部脈寬的最高頻率為fosc/24fosc/24,所以,測,所以,測試值的合理范圍是試值的合理范圍是2-65536x22-65536x2。北京交通大學32 ORG 300HORG 300H START START:MOV TMODMOV TMOD,#90H #90H ;GATE=1 ;GATE=1 ,T1T1方式方式1 1 MOV TL1 MOV TL1,#00H#00H; ;從零開始計數從零開始計數 MOV TH1MOV TH1,#00H#00H MOV R0 MOV R0,#40H#40H ; ;置數據指針置數據指針 DONE DONE:JNB P3.3JNB P3.3,DONEDONE; ;等等INT1INT1變高變高 SETB TR1 SETB TR1 ; ;啟動計數啟動計數 DONE1 DONE1:JB P3.3JB P3.3,DONE1 DONE1 ; ;等等INT1INT1變低變低 CLR TR1 CLR TR1; ;停止計數停止計數 MOV AMOV A,TH1TH1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電氣工程及其自動化專業(yè)介紹
- 2024連鎖餐飲企業(yè)與食材供應商的供貨合同
- 數控機床電氣控制第2版習題答案習題答案
- 2024物流與智慧城市建設合作框架協(xié)議3篇
- 2024版精裝修房屋合同模板:權益保障與細節(jié)解析
- 2025年度數據中心設備采購及運維服務合同3篇
- 沈陽城市學院《飛機載重與平衡》2023-2024學年第一學期期末試卷
- 陽泉師范高等??茖W校《輪機化學》2023-2024學年第一學期期末試卷
- 2024庭院房屋產權轉讓合同書樣本3篇
- 內蒙古美術職業(yè)學院《區(qū)域經濟學實驗》2023-2024學年第一學期期末試卷
- 2025年度航空航天材料研發(fā)與應用技術服務合同2篇
- AEO貿易安全培訓
- 2025年中國財產險行業(yè)市場深度分析及發(fā)展趨勢預測報告
- 巨量信息流廣告(初級)營銷師認證考試題及答案
- 銀行會計主管年度工作總結2024(30篇)
- 上海市12校2025屆高三第一次模擬考試英語試卷含解析
- 重慶市渝中區(qū)2023-2024學年八年級上學期期末考試數學試題含答案及解析
- 【MOOC】教學研究的數據處理與工具應用-愛課程 中國大學慕課MOOC答案
- 工商企業(yè)管理畢業(yè)論文范文 工商企業(yè)管理5000論文范文
- 《小學科學實驗創(chuàng)新》課件
- 2024年手術室護士年度工作計劃(4篇)
評論
0/150
提交評論