C51單片機(jī)教程第9章課件_第1頁
C51單片機(jī)教程第9章課件_第2頁
C51單片機(jī)教程第9章課件_第3頁
C51單片機(jī)教程第9章課件_第4頁
C51單片機(jī)教程第9章課件_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第9章定時器/計數(shù)器的應(yīng)用9.1定時器/計數(shù)器定時功能的應(yīng)用9.2簡易方波發(fā)生器9.3外部脈沖寬度的測量1.實(shí)訓(xùn)目的掌握定時器/計數(shù)器定時功能的使用方法掌握定時器初值的計算方法掌握定時中斷程序的編程方法2.功能設(shè)計主程序:定時器T0的初始化,應(yīng)用P1口控制發(fā)光二極管L1~L8的亮暗交替顯示。定時器T0中斷:T0產(chǎn)生10s的定時中斷,當(dāng)定時時間到時,8個發(fā)光二極管全滅,并持續(xù)一段時間(延時1s)。9.1定時器/計數(shù)器定時功能的應(yīng)用3.背景知識8051單片機(jī)的定時器/計數(shù)器T0(T1)為16位計數(shù)器,有4種工作方式。每種工作方式的特點(diǎn)見書中表9.1。本題目需要T0定時10s,直接使用表9.1中的4種方式均不能達(dá)到要求。如果采用方式1,定時100ms,則中斷10次時間為100ms×100=10000ms=10s。(1)定時器工作方式寄存器TMOD設(shè)置如書中所示。(2)定時器/計數(shù)器控制寄存器TCON設(shè)置如書中所示。4.硬件原理與資源分配硬件原理圖如圖9.1所示。硬件資源分配:P1口為8位輸出口,驅(qū)動8個發(fā)光二極管。R5為循環(huán)計數(shù)器。圖9.1T0定時實(shí)訓(xùn)硬件原理圖5.參考程序ORG0000HAJMPMAIN ;轉(zhuǎn)主程序ORG000BH ;T0中斷入口地址AJMPJT0 ;轉(zhuǎn)T0處理程序MAIN:NOP ;主程序段MOVSP,#40H ;設(shè)定堆棧MOVA,#0FFHMOVP1,A ;初始化P1口MOVR5,#100MOVTMOD,#01H ;寫控制字,T0工作方式1MOVTH0,#0B0H ;設(shè)定初始值MOVTL0,#3CHPUSH02HPUSH03HPUSH04HDJNZR5,RRTMOVR5,#100MOVA,#0FFH ;L1~L8全滅MOVP1,ALCALLYS1 ;調(diào)用延時1s子程序RRT:MOVTH0,#3CH ;重裝初始值MOVTL0,#0B0HPOP04H ;恢復(fù)現(xiàn)場POP03HPOP02HPOPACCSETBEA ;開中斷RETI ;中斷返回DLS:MOVR1,#0FFHLOP1:MOVR2,#0FFHLOP:DJNZR2,LOPDJNZR1,LOP1RETEND子程序YS1見第6章例6.3。6.總結(jié)與提高定時器/計數(shù)器是單片機(jī)內(nèi)部重要的功能部件,靈活運(yùn)用定時器/計數(shù)器的功能,不僅能夠節(jié)約硬件資源,而且還能使程序簡練、控制靈活。在使用定時器/計數(shù)器時應(yīng)注意以下幾個方面:(1)應(yīng)根據(jù)所要求的定時時間長度和定時的重復(fù)性,合理選擇定時器的工作方式。(2)定時器/計數(shù)器的初始化,包括設(shè)定TMOD、寫入定時初值、設(shè)置中斷系統(tǒng)和啟動定時器運(yùn)行等。1.實(shí)訓(xùn)目的掌握定時器的使用及定時中斷程序的設(shè)計方法掌握方波信號發(fā)生器的設(shè)計方法2.功能設(shè)計用單片機(jī)的P3.1端口輸出一定頻率的方波。P1口外接K1~K8共8個按鍵,用來設(shè)定輸出方波的頻率,共8個檔位。系統(tǒng)晶振為12MHz。9.2簡易方波發(fā)生器3.背景知識(1)若P3.1的輸出狀態(tài)定時翻轉(zhuǎn),則P3.1端口輸出一定頻率的方波。假設(shè)以定時器T0定時8ms(8000μs)為基本定時時間,則P3.1端口輸出方波的周期為16ms。選擇T0方式0定時功能,定時器初值為:Tini=213-8000/1=192=C0H=11000000B低5位(TL0)=×××00000B=00H,高8位(TH0)=00000110B=06H。定時器工作方式寄存器TMOD設(shè)置如書中所示。(2)按下按鍵K1,則P3.1輸出基本頻率的方波,按下按鍵K2~K8,則P3.1輸出頻率依次降低。主程序要根據(jù)按鍵確定P3.1口的輸出頻率。(3)T0的中斷入口地址為000BH。圖9.2方波發(fā)生器5.參考程序ORG0000H ;CPU起始地址AJMPMAIN ;跳轉(zhuǎn)到主程序ORG000BH ;T0中斷入口地址AJMPJT0 ;跳轉(zhuǎn)到T0處理程序MAIN:NOP ;主程序段MOVSP,#40H ;設(shè)定堆棧MOVA,#0FFH ;0FF送AMOVP1,A ;P1口為輸入口,初始化P1口MOVTMOD,#00H ;寫控制字,T0工作方式0MOVTH0,#06H ;設(shè)定初始值MOVTL0,#00HSETBP3.1SETBTR0 ;啟動T0SETBET0 ;允許T0中斷SETBEA ;開總中斷,EA=1(開放總中斷)LOOP:MOVA,P1 ;讀P1口MOV61H,A ;保存P1口內(nèi)容JBACC.0,LA1 ;判斷是哪一個檔位MOVR5,#01HLJMPLA9LA1:JBACC.1,LA2MOVR5,#02HLJMPLA9LA2:JBACC.2,LA3MOVR5,#03HLJMPLA9LA8:AJMPLOOP ;主程序循環(huán),如果有中斷,則轉(zhuǎn)中斷處理程序JT0:NOP ;T0中斷處理程序PUSHACC ;將A中數(shù)據(jù)壓入堆棧保存CLRET0 ;關(guān)T0中斷DJNZR5,TT10 ;由設(shè)定的R5的值確定輸出方波的頻率CPLP3.1 ;P3.0輸出MOVR5,62HTT10:MOVTH0,#06H;重裝初始值MOVTL0,#00HSETBET0 ;開T0中斷POPACC ;恢復(fù)ARETI ;中斷返回END6.總結(jié)與提高本實(shí)訓(xùn)是應(yīng)用定時器T0的定時功能,輸出8種不同頻率的方波。實(shí)際應(yīng)用中,輸出方波的頻率可能要根據(jù)要求按某種規(guī)律變化,如根據(jù)現(xiàn)場測量參數(shù)、給定參數(shù)或按照某函數(shù)關(guān)系而變化。因此輸出波形的頻率在編程時還是未知的。1.實(shí)訓(xùn)目的掌握定時/計數(shù)器門控位的使用方法掌握脈沖寬度的測量方法2.功能設(shè)計測量P3.2口輸入的脈沖的寬度。9.3外部脈沖寬度的測量(2)定時器工作方式寄存器TMOD的設(shè)置如書中所示。4.硬件原理與資源分配硬件原理圖如圖9.3所示。硬件資源分配:內(nèi)部RAM60H、61H單元用于保存脈沖寬度對應(yīng)的機(jī)器周期數(shù)。圖9.3外部脈沖測量電路圖5.參考程序ORG0000HAJMPMAINMAIN:NOPMOVSP,#40HMOVTMOD,#90H ;寫控制字,T1工作方式1MOVTH1,#0H ;設(shè)定初始值00HMOVTL1,#0HLL0:JBP3.3,LL0 ;等待輸入變?yōu)楦唠娖絊ETBTR1 ;啟動T1LL1:JNBP3.3,LL1 ;等待上升沿,以

溫馨提示

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

評論

0/150

提交評論