




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第6章89C51的定時(shí)器/計(jì)數(shù)器兩個(gè)可編程的定時(shí)器/計(jì)數(shù)器T1、T0。
2種工作模式:。(1)計(jì)數(shù)器工作模式(2)定時(shí)器工作模式
4種工作方式(方式0-方式3第6章89C51的定時(shí)器/計(jì)數(shù)器兩個(gè)可編程的定時(shí)器/計(jì)數(shù)15.1定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)與工作原理加一計(jì)數(shù)器5.1定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)與工作原理加一計(jì)數(shù)器25.2定時(shí)計(jì)數(shù)器的控制與工作方式(寄存器TMOD、TCON)
M1M200方式0(13位)01方式1(16位)10方式2(8位,自動(dòng)重裝)11方式3(T0,2個(gè)8位)計(jì)數(shù)器模式和定時(shí)器模式選擇位0:定時(shí)器模式。1:計(jì)數(shù)器模式。
門控位
0:僅以TRX(X=0,1)來啟動(dòng)定時(shí)器/計(jì)數(shù)器運(yùn)行。1:用引腳INT0*(或INT1*)來啟動(dòng)定時(shí)器/計(jì)數(shù)器運(yùn)行。1、控制5.2定時(shí)計(jì)數(shù)器的控制與工作方式(寄存器TMOD、TCON3
TF1、TF0計(jì)數(shù)溢出標(biāo)志位(2)TR1、TR0定時(shí)計(jì)數(shù)運(yùn)行控制位1:?jiǎn)?dòng)0:停止IT0/IT1選擇外中斷請(qǐng)求IT0=0
為電平觸發(fā)方式。IT0=1
為跳沿觸發(fā)方式??捎绍浖谩?”或清“0”。
IE0=0、IE1=0
無外部中斷請(qǐng)求。IE0=1、IE1=1,外部中斷0、1有中斷請(qǐng)求。當(dāng)CPU響應(yīng)該中斷,轉(zhuǎn)向中斷服務(wù)程序時(shí),由硬件清“0”IE0。TF1、TF0(2)TR1、TR0IT0/IT1IE0=4
2、4種工作方式
方式0
M1、M0為00,定時(shí)器/計(jì)數(shù)器的框圖:
2、4種工作方式方式05方式1
M1、M0=01,16位的計(jì)數(shù)器
方式1M1、M0=01,16位的計(jì)數(shù)器6方式2
M1、M0=10\計(jì)數(shù)滿后自動(dòng)裝入計(jì)數(shù)初值
,等效框圖如下:
方式2
M1、M0=10\計(jì)數(shù)滿后自動(dòng)裝入計(jì)數(shù)初值,7方式2工作過程圖定時(shí)器/計(jì)數(shù)器的方式2工作過程如圖6-7(X=0,1)。省去用戶軟件中重裝初值的程序,精確的定時(shí)。圖6-7方式2工作過程圖定時(shí)器/計(jì)數(shù)器的方式2工作過程如圖6-7(X8
4方式3
方式3中T0分成兩個(gè)的8位定時(shí)器/計(jì)數(shù)器:TL0、TH0與T1構(gòu)成3個(gè)定時(shí)器/計(jì)數(shù)器。方式3只適用于T0,不適用于T1,若T1工作于方式3時(shí)相當(dāng)于TR1=0,停止計(jì)數(shù)。方式3時(shí)T1可工作于方式0、方式1和方式2,作波特率發(fā)生器(或不需中斷的場(chǎng)合)4方式3方式3中T0分成兩個(gè)的8位定時(shí)器/計(jì)數(shù)器:91)工作方式3下的T0
T0分為兩個(gè)獨(dú)立的8位計(jì)數(shù)器:TL0、TH0
4方式31)工作方式3下的T0
T0分為兩個(gè)獨(dú)立的8位計(jì)數(shù)器:T10T0為方式3時(shí)
T1可定為方式0、方式1和方式2
用作串行口的波特率發(fā)生器(Baudrategenerator
),即作為串口數(shù)據(jù)傳送時(shí)的時(shí)鐘信號(hào)?;虿恍枰袛嗟膱?chǎng)合(因?yàn)門F0、TF1 均被T0占用)。(1)T1工作在方式0
2)工作在方式3下的T1
T0為方式3時(shí)2)工作在方式3下的T111(2)T1工作在方式1
(3)T1工作在方式2
(2)T1工作在方式112INT0\INT1\T0\T1和中斷系統(tǒng)的連接P3.4T0P3.5T1TR0TR1P3.2INT0P3.3INT15.3定時(shí)器/計(jì)數(shù)器的編程和應(yīng)用1)、編程步驟:(1)設(shè)置工作方式(2)裝入計(jì)數(shù)初值(3)開中斷(4)啟動(dòng)計(jì)數(shù)1、初始化INT0\INT1\T0\T1和中斷系統(tǒng)的連接P3.4T13(1)計(jì)數(shù)時(shí)的初值計(jì)算:X=M(模值)-要計(jì)數(shù)的值(2)定時(shí)時(shí)的計(jì)數(shù)初值計(jì)算:X=M(模值)-定時(shí)時(shí)間(要計(jì)數(shù)的時(shí)間)/定時(shí)脈沖周期(每計(jì)一次數(shù)的時(shí)間)*注:定時(shí)脈沖周期=12/fosc
定時(shí)、計(jì)數(shù)的初值計(jì)算:(1)計(jì)數(shù)時(shí)的初值計(jì)算:定時(shí)、計(jì)數(shù)的初值計(jì)算:14舉例說明計(jì)數(shù)初值的計(jì)算
假設(shè)系統(tǒng)時(shí)鐘頻率采用6MHz,要求產(chǎn)生10ms定時(shí),試分別計(jì)算定時(shí)器在方式0、1、2時(shí)的初值。X=213–10ms÷(12÷6Mhz)=213-5000=3192DX=28–10ms÷(12÷6Mhz)=28-5000=-4744
說明不能采用方式2產(chǎn)生10ms定時(shí)。
X=216
–10ms÷(12÷6Mhz)=216-5000=60536D=0EC78
(1)方式0的初值X(2)方式1的初值X(3)方式2的初值X
舉例說明計(jì)數(shù)初值的計(jì)算
假設(shè)系統(tǒng)時(shí)鐘頻率采用6MHz,要求15
2)、最大定時(shí)時(shí)間的計(jì)算假設(shè)系統(tǒng)時(shí)鐘頻率采用6MHz,試分別計(jì)算定時(shí)器在方式0、1、2時(shí)的最大定時(shí)時(shí)間。[分析]X=M(模值)-定時(shí)時(shí)間/定時(shí)脈沖周期,式中X=0.即:定時(shí)時(shí)間max=M×定時(shí)脈沖周期,故:(1)方式0的最大定時(shí)時(shí)間:T=213×12÷6Mhz=16.384ms(2)方式1的最大定時(shí)時(shí)間:T=216×12÷6Mhz=131.027ms(3)方式2的最大定時(shí)時(shí)間:T=28×12÷6Mhz=512us
2)、最大定時(shí)時(shí)間的計(jì)算假設(shè)系統(tǒng)時(shí)鐘頻率采用6MHz,試16
4)、初始化編程舉例例5-1T1、方式1、定時(shí)50ms,軟件啟動(dòng)、允許中斷(設(shè)fosc=12MHZ),編寫初始化程序段P3.4T0P3.5T1TR0TR1P3.2INT0P3.3INT11、編程步驟:(1)設(shè)置工作方式(2)裝入計(jì)數(shù)初值(3)開中斷(位編程或字節(jié)編程)(4)啟動(dòng)計(jì)數(shù)4)、初始化編程舉例例5-1T1、方式1、定時(shí)50ms,17例5-2
計(jì)數(shù)器T0對(duì)T0引腳(P3.4)出現(xiàn)的脈沖計(jì)數(shù),每計(jì)數(shù)100個(gè)脈沖向CPU中斷一次、設(shè)用軟件啟動(dòng),編寫初始化程序段。P3.4T0P3.5T1TR0TR1P3.2INT0P3.3INT11、編程步驟:(1)設(shè)置工作方式(2)裝入計(jì)數(shù)初值(3)開中斷(位編程或字節(jié)編程)(4)啟動(dòng)計(jì)數(shù)計(jì)數(shù)時(shí)的初值計(jì)算:X=M(模值)-要計(jì)數(shù)的數(shù)值例5-2計(jì)數(shù)器T0對(duì)T0引腳(P3.4)出現(xiàn)的脈沖計(jì)數(shù),每18分配存儲(chǔ)空間主程序中斷服務(wù)程序X=216–10ms÷(12÷12Mhz)=216-10000=55536=0D8F0H所以:T0的初值為:
TH0=D8HTL0=F0H例5-3(定時(shí)):
T0定時(shí),在P1.7輸出50HZ(20ms)方波,設(shè)晶振頻率12MHZ(分別
①采用中斷、②查詢方式編程)主程序:①設(shè)置工作方式②裝入計(jì)數(shù)初值③開中斷
④啟動(dòng)計(jì)數(shù)等待中斷請(qǐng)求
2、定時(shí)/計(jì)數(shù)應(yīng)用舉例(定時(shí)/計(jì)數(shù)舉例)(1)計(jì)算初值X(2)程序設(shè)計(jì)(觀察下頁圖)
ORG0000H
①AJMPMAIN
ORG000BH
②
AJMPIT0P
③
ORG0100HMAIN:MOVSP,#60H
④
MOVTMOD,#01H MOVTL0,#0F0H
MOVTH0,#0D8H
SETBTR0
⑤
SETBET0
SETBEAHERE:AJMPHERE
⑥
ITOP:MOVTL0,#0F0H
MOVTH0,#0D8HCPLP1.7
RETI
END分配存儲(chǔ)空間X=216–10ms÷(12÷12Mhz19P3.4T0P3.5T1TR0TR1P3.2INT0P3.3INT1TL0TH0TF0設(shè)置T0工作方式裝入計(jì)數(shù)初值開中斷啟動(dòng)計(jì)數(shù)000BPCP3.4T0P3.5T1TR0TR1P3.2IN20跳轉(zhuǎn)到主程序0000
0001
跳轉(zhuǎn)到INT00003跳轉(zhuǎn)到T1
…001B跳轉(zhuǎn)到T0000B
…跳轉(zhuǎn)到INT10013
…
…串口中斷0023跳轉(zhuǎn)到主程序00000001跳轉(zhuǎn)到INT00003跳轉(zhuǎn)到21例5-4(計(jì)數(shù)):計(jì)數(shù)/定時(shí)器T1對(duì)T1引腳計(jì)數(shù),每計(jì)數(shù)100個(gè)脈沖,在P1.0輸出一個(gè)正脈沖。X=28–100=156=9CH主程序:①設(shè)置工作方式②裝入計(jì)數(shù)初值③開中斷使P1.0輸出0電平
④啟動(dòng)計(jì)數(shù)等待中斷請(qǐng)求
分配存儲(chǔ)空間主程序中斷服務(wù)程序(1)計(jì)算初值X(2)程序設(shè)計(jì)
ORG0000H
①AJMPMAIN
ORG001BH
②
AJMPIT1P
③
ORG0100HMAIN:MOVSP,#60H
④
MOVTMOD,#01H MOVTL0,#9CH
MOVTH0,#9CHSETBET1
SETBEA
CLRP1.0
SETBTR1
⑤
HERE:AJMPHERE
⑥
IT1P:SETBP1.0
NOPNOP
CLRP1.0
RETI END
例5-4(計(jì)數(shù)):計(jì)數(shù)/定時(shí)器T1對(duì)T1引腳計(jì)數(shù),每計(jì)數(shù)22(2)程序設(shè)計(jì)
(1)計(jì)算初值X分配存儲(chǔ)空間主程序中斷服務(wù)程序例5.5(定時(shí)擴(kuò)展):利用軟件擴(kuò)展方法實(shí)現(xiàn)1s定時(shí),使得P1口控制8各發(fā)光二極管輪流點(diǎn)亮(低電平點(diǎn)亮),設(shè)fosc=6MHZ. ORG0000H
LJMP MAIN
ORG000BH
LJMP DVT0ORG0030H
主程序:①設(shè)置工作方式②裝入計(jì)數(shù)初值③開中斷設(shè)置中斷次數(shù)使P1口D0燈亮
④啟動(dòng)計(jì)數(shù)等待中斷請(qǐng)求
MAIN: MOVSP,#60H
MOVTMOD,#01H
MOVTH0,#9EH
MOVTL0,#58H SETBET0 SETBEA
R2,#20H MOVA,#0FEH MOVP1,A
SETBTR0
SJMP$
DVT0: DJNZR2,RTN
RLA MOVP1,A
MOVR2,#20 RTN: MOVTH0,#9EH
MOVTL0,#58H RETI
END
(2)程序設(shè)計(jì)(1)計(jì)算初值X分配存儲(chǔ)空間例5.5(定時(shí)23例5.6(擴(kuò)展外部(引腳)中斷源):利用T0擴(kuò)展一個(gè)外部中斷源。將T0設(shè)置為計(jì)數(shù)方式,按方式2工作,TH0\TL0的值均為0FFH,T0允許中斷,CPU開放中斷,只寫初始化程序。①設(shè)置工作方式②裝入計(jì)數(shù)初值③開中斷
④啟動(dòng)計(jì)數(shù)
例5.6(擴(kuò)展外部(引腳)中斷源):利用T0擴(kuò)展一個(gè)外部中24(2)程序設(shè)計(jì)
(1)計(jì)算初值X=0000H分配存儲(chǔ)空間主程序例5.7(GATE位應(yīng)用):利用T0的GATE位。測(cè)量INT0引腳上出現(xiàn)的脈沖寬度,并將結(jié)果存于片內(nèi)30H\31H處。試編程實(shí)現(xiàn)上述功能。
T0P3.4INT0TF1主程序:①設(shè)置工作方式②裝入計(jì)數(shù)初值③開中斷×(無需開中斷)設(shè)置存儲(chǔ)脈沖寬度的地址指針等待INT0變低
④開啟TR0(并未啟動(dòng)計(jì)數(shù))INT0一旦變高,則啟動(dòng)計(jì)數(shù)INT0一旦變低,則停止計(jì)數(shù)INTO=0則將計(jì)數(shù)器TL0\TH0存于指定存儲(chǔ)單元查詢INT0=0(2)程序設(shè)計(jì)(1)計(jì)算初值X=0000H分配存儲(chǔ)空間例25實(shí)例設(shè)89C51單片機(jī)的工作頻率為6Mhz,利用T0中斷擴(kuò)展方式產(chǎn)生1s定時(shí),當(dāng)1s定時(shí)到,從P1.0輸出低電平點(diǎn)亮發(fā)光二極管,每產(chǎn)生一次中斷,P1.7取反一次。實(shí)例設(shè)89C51單片機(jī)的工作頻率為6Mhz,利用T0中斷擴(kuò)26電路圖電路圖27程序ORG0000H;復(fù)位入口
LJMP MAIN;轉(zhuǎn)到主程序
ORG000BH;T0中斷入口
LJMP TT0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通運(yùn)輸行業(yè)智慧物流方案與實(shí)踐案例
- 股份制合作協(xié)議書編寫指南
- 醫(yī)療美容股份轉(zhuǎn)讓協(xié)議書
- 旅客出行交通方式選擇偏好表
- 中介買賣房屋合同
- 企業(yè)人力資源數(shù)字化管理平臺(tái)建設(shè)方案設(shè)計(jì)
- 導(dǎo)游聘用勞動(dòng)合同
- 業(yè)務(wù)合同記錄管理表
- 建房承包施工協(xié)議書
- 產(chǎn)品測(cè)試數(shù)據(jù)表-新產(chǎn)品上市數(shù)據(jù)
- 教科版科學(xué)六年級(jí)下冊(cè)全冊(cè)同步練習(xí)含答案
- GB/T 2651-2023金屬材料焊縫破壞性試驗(yàn)橫向拉伸試驗(yàn)
- 教師職業(yè)道德(小學(xué)教育專業(yè))高職PPT完整全套教學(xué)課件
- 定積分的應(yīng)用-畢業(yè)論文
- 口腔正畸學(xué)人衛(wèi)緒論
- 《三角形》單元作業(yè)設(shè)計(jì)
- 浙美版小學(xué)美術(shù)四年級(jí)上冊(cè)2磚石上的雕刻教學(xué)設(shè)計(jì)
- 學(xué)前教育基礎(chǔ)綜合(心理學(xué))考試復(fù)習(xí)題庫(含答案)
- 高級(jí)英語I(下)-華東理工大學(xué)智慧樹知到答案章節(jié)測(cè)試2023年
- 會(huì)計(jì)科目分類明細(xì)表及借貸方法科目使用說明
- DB3207-T 2007-2022 政府購(gòu)買動(dòng)物防疫社會(huì)化服務(wù)管理規(guī)范
評(píng)論
0/150
提交評(píng)論