定時單片機(jī)_匯編_第1頁
定時單片機(jī)_匯編_第2頁
定時單片機(jī)_匯編_第3頁
定時單片機(jī)_匯編_第4頁
定時單片機(jī)_匯編_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)原理及應(yīng)用定時器工作方式寄存器定時器工作方式寄存器TMOD用于用于T1用于用于T0GATEC/TM1M0GATEC/TM1M0門控位門控位計(jì)數(shù)計(jì)數(shù)/定時選擇位定時選擇位“1”-計(jì)數(shù)計(jì)數(shù)“0”-定時定時M1M0:工作方式選擇位:工作方式選擇位00:方式:方式0-13位計(jì)數(shù)器位計(jì)數(shù)器01:方式:方式1-16位計(jì)數(shù)器位計(jì)數(shù)器10:方式:方式2-兩個兩個8位計(jì)數(shù)器位計(jì)數(shù)器 自動重裝初值自動重裝初值11:方式:方式3-僅僅T0可用可用 復(fù)習(xí)復(fù)習(xí)單片機(jī)原理及應(yīng)用模式模式2及應(yīng)用及應(yīng)用模式模式2結(jié)構(gòu)結(jié)構(gòu)8位計(jì)數(shù)器位計(jì)數(shù)器單片機(jī)原理及應(yīng)用 TL0計(jì)數(shù)溢出時,不僅使溢出中斷標(biāo)志位計(jì)數(shù)溢出時,不僅使溢出中斷

2、標(biāo)志位TF0置置1,而且還,而且還自動把自動把TH0中的內(nèi)容重新裝載到中的內(nèi)容重新裝載到TL0中。這里,中。這里,16位計(jì)數(shù)器被拆位計(jì)數(shù)器被拆成二個,成二個,TL0用作用作8位計(jì)數(shù)器,位計(jì)數(shù)器,TH0用以保護(hù)初值用以保護(hù)初值。 在程序初始化時,在程序初始化時,TL0和和TH0由軟件賦予相同的初值。由軟件賦予相同的初值。一一旦旦TL0計(jì)數(shù)溢出,便置位計(jì)數(shù)溢出,便置位TF0,并將,并將TH0中的初值再自動裝入中的初值再自動裝入TL0,繼續(xù)計(jì)數(shù),循環(huán)重復(fù)。,繼續(xù)計(jì)數(shù),循環(huán)重復(fù)。,其定時時,其定時時間(間(TF0溢出周期)為溢出周期)為 ,最大計(jì)數(shù)長度(,最大計(jì)數(shù)長度(TH0初值初值=0)為)為28=

3、256(個外部脈沖)。(個外部脈沖)。 這種工作模式可這種工作模式可省去用戶軟件中重裝常數(shù)的語句省去用戶軟件中重裝常數(shù)的語句,并,并可產(chǎn)生可產(chǎn)生相當(dāng)精確的定時時間相當(dāng)精確的定時時間,特別適于串行口波特率發(fā)生器。,特別適于串行口波特率發(fā)生器。單片機(jī)原理及應(yīng)用 在某啤酒自動生產(chǎn)線上,需要每生產(chǎn)在某啤酒自動生產(chǎn)線上,需要每生產(chǎn)1010瓶執(zhí)行裝箱操作,瓶執(zhí)行裝箱操作,將生產(chǎn)出的啤酒自動裝箱。試用將生產(chǎn)出的啤酒自動裝箱。試用MCS-51MCS-51單片機(jī)的計(jì)數(shù)器實(shí)現(xiàn)該單片機(jī)的計(jì)數(shù)器實(shí)現(xiàn)該控制要求??刂埔蟆?解:如果在啤酒生產(chǎn)線上裝有傳感裝置,每檢測到一瓶啤酒經(jīng)過就向單片機(jī)發(fā)送一個脈沖信號,這樣使用計(jì)數(shù)

4、功能就可實(shí)現(xiàn)。設(shè)用T0的工作方式2來完成該題目。 MOV TMOD,#06H;00000110B,T0采用方式2計(jì)數(shù) MOV TL0,#0F6H ;裝入初值 MOV TH0,#0F6H MOV IE,#00H ;禁止中斷 SETB TR0 ;啟動定時T0,開始計(jì)數(shù) LOOP:JBC TF0,LOOP1 AJMP LOOP LOOP1:(驅(qū)動電機(jī)轉(zhuǎn)動) AJMP LOOP 單片機(jī)原理及應(yīng)用 例例:當(dāng):當(dāng)P3.4引腳上的電平發(fā)生負(fù)跳變時,從引腳上的電平發(fā)生負(fù)跳變時,從P1.0輸出一輸出一個個500s的同步脈沖。請編程實(shí)現(xiàn)該功能。的同步脈沖。請編程實(shí)現(xiàn)該功能。 解解: 首先選首先選T0為模式為模式2

5、,外部事件計(jì)數(shù)方式。當(dāng),外部事件計(jì)數(shù)方式。當(dāng)P3.4引腳引腳上的電平發(fā)生負(fù)跳變時,上的電平發(fā)生負(fù)跳變時,T0計(jì)數(shù)器加計(jì)數(shù)器加1,溢出標(biāo)志,溢出標(biāo)志TF0置置1;然后改變;然后改變T0為為500s定時工作方式,并使定時工作方式,并使P1.0輸輸出由出由1變?yōu)樽優(yōu)?。T0定時到產(chǎn)生溢出,使定時到產(chǎn)生溢出,使P1.0引腳恢復(fù)輸引腳恢復(fù)輸出高電平,出高電平,T0又恢復(fù)外部事件方式。又恢復(fù)外部事件方式。 單片機(jī)原理及應(yīng)用 T0工作在外部事件計(jì)數(shù)方式,當(dāng)計(jì)數(shù)到工作在外部事件計(jì)數(shù)方式,當(dāng)計(jì)數(shù)到28 時,時,再加再加1計(jì)數(shù)器就會溢出。設(shè)計(jì)數(shù)初值為計(jì)數(shù)器就會溢出。設(shè)計(jì)數(shù)初值為X,當(dāng)再出,當(dāng)再出現(xiàn)一次外部事件時,

6、計(jì)數(shù)器溢出。則現(xiàn)一次外部事件時,計(jì)數(shù)器溢出。則 X+1=28 X=281=11111111B=0FFH T0工作在定時方式時,設(shè)晶振頻率為工作在定時方式時,設(shè)晶振頻率為6MHz,500s相當(dāng)于相當(dāng)于250個機(jī)器周期。因此,初值個機(jī)器周期。因此,初值X為為 (28X) 2s=500s X=28250=6=06H 單片機(jī)原理及應(yīng)用 START: MOV TMOD,#06H ;設(shè)置設(shè)置T0T0為模式為模式2 2。外部計(jì)數(shù)方式。外部計(jì)數(shù)方式 MOV TH0,#0FFH ;T0;T0計(jì)數(shù)器初值計(jì)數(shù)器初值 MOV TL0,#0FFH SETB TR0 ;啟動啟動T0T0計(jì)數(shù)計(jì)數(shù) LOOP1: JBC TF

7、0,PTFO1 ;查詢查詢T0T0溢出標(biāo)志,溢出標(biāo)志,TF0=1TF0=1時轉(zhuǎn)移時轉(zhuǎn)移 TF0=0( TF0=0(即查即查P3.4P3.4負(fù)跳變負(fù)跳變) ) SJMP LOOP1PTFO1: CLR TR0 ;停止計(jì)數(shù)停止計(jì)數(shù) MOV TMOD,#02H ;設(shè)置設(shè)置T0T0為模式為模式2 2,定時方式,定時方式 MOV TH0,#06H ;T0;T0定時定時500us500us初值初值 MOV TL0,#06H CLR P1.0 ;P1.0;P1.0清清0 0 SETB TR0 ;啟動定時啟動定時500us500us單片機(jī)原理及應(yīng)用 LOOP2: JBC TF0,PTFO2 ;查詢溢出標(biāo)志查詢

8、溢出標(biāo)志, ,定時到定時到TF0=1TF0=1轉(zhuǎn)轉(zhuǎn) 移移, ,且且TF0=0(TF0=0(第一個第一個500us500us到否到否?) ?) SJMP LOOP2PTFO2: SETB P1.0 ;P1.0P1.0置置1( 1(到了第一個到了第一個500us)500us) CLR TR0 ;停止計(jì)數(shù)停止計(jì)數(shù) SJMP START單片機(jī)原理及應(yīng)用 例例:利用:利用對外部信號計(jì)數(shù)。要求每對外部信號計(jì)數(shù)。要求每計(jì)滿計(jì)滿100次,將次,將P1.0端取反。端取反。解解: X=28-100=156D=9CH 因此,因此,TL1的初值為的初值為9CH,重裝初值寄存器,重裝初值寄存器TH1=9CH 外部信號由

9、外部信號由T1(P3.5)引腳輸入,每發(fā)生一次負(fù)跳變計(jì))引腳輸入,每發(fā)生一次負(fù)跳變計(jì)數(shù)器加數(shù)器加1,每輸入,每輸入100個脈沖,計(jì)數(shù)器發(fā)生溢出中斷,中斷服務(wù)個脈沖,計(jì)數(shù)器發(fā)生溢出中斷,中斷服務(wù)器將器將P1.0取反一次。取反一次。 T1計(jì)數(shù)工作方式模式計(jì)數(shù)工作方式模式2的模式字為的模式字為TMOD=60H。T0不用不用時,時,TMOD的低的低4位可任取位可任取,但不能使,但不能使T0進(jìn)入模式進(jìn)入模式3,一般取,一般取0。單片機(jī)原理及應(yīng)用 MAIN:MOV TMOD,#60H ;置置T1T1為模式為模式2 2計(jì)數(shù)工作方式計(jì)數(shù)工作方式 MOV TL1,#9CH ;賦初值;賦初值 MOV TH1,#9

10、CH MOV IE,#88H ;定時器定時器T1T1開中斷開中斷 SETB TR 1 ;啟動計(jì)數(shù)器啟動計(jì)數(shù)器 HERE: SJMP HERE ;等待中斷等待中斷 ORG 001BH ;中斷服務(wù)程序入口中斷服務(wù)程序入口 CPL P1.0 RETI單片機(jī)原理及應(yīng)用模式模式3及應(yīng)用及應(yīng)用 工作模式工作模式3對對T0和和T1。 若將若將T0設(shè)置為模式設(shè)置為模式3,TL0和和TH0被分成為兩個相互獨(dú)立的被分成為兩個相互獨(dú)立的8位計(jì)數(shù)器位計(jì)數(shù)器,如,如圖所示。圖所示。圖圖 T0 模式模式3結(jié)構(gòu):分成二個結(jié)構(gòu):分成二個8位計(jì)數(shù)器位計(jì)數(shù)器 單片機(jī)原理及應(yīng)用 TL0使用使用T0的各控制位、引腳和中斷源,其的各控

11、制位、引腳和中斷源,其操作模式和模操作模式和模式式0、1相同。相同。 TH0用于用于簡單的內(nèi)部定時簡單的內(nèi)部定時,它占,它占用定時器用定時器T1的控制位的控制位TR1和和TF1,其啟動和關(guān)閉僅受,其啟動和關(guān)閉僅受TR1的控制的控制。 TH0僅占用僅占用T1的與中斷有關(guān)的的與中斷有關(guān)的IE中的位,但并未占用中的位,但并未占用TMOD中的位,中的位,TMOD中的中的T1的控制位仍然由的控制位仍然由T1使用。使用。 ,單片機(jī)原理及應(yīng)用 在定時器在定時器T0用作模式用作模式3時,時,T1仍可設(shè)置為模式仍可設(shè)置為模式02,見圖,見圖 (a)和和(b)。由于由于TR1和和TF1被定時器被定時器T0占用,計(jì)

12、數(shù)器開關(guān)占用,計(jì)數(shù)器開關(guān)K已被接通,此時,已被接通,此時,僅用僅用T1控制位控制位C/T切換其定時器或計(jì)數(shù)器工作方式就可使切換其定時器或計(jì)數(shù)器工作方式就可使T1運(yùn)行運(yùn)行。寄存器。寄存器(8位、位、13位或位或16位)溢出時,只能將輸出送入串行口或用于不需要中位)溢出時,只能將輸出送入串行口或用于不需要中斷的場合。一般情況下,當(dāng)定時器斷的場合。一般情況下,當(dāng)定時器T1用作串行口波特率發(fā)生器時,定用作串行口波特率發(fā)生器時,定時器時器T0才設(shè)置為工作模式才設(shè)置為工作模式3。此時,。此時,常把定時器常把定時器T1設(shè)置為模式設(shè)置為模式2,用作,用作波特率發(fā)生器波特率發(fā)生器,見圖,見圖 (b)。 單片機(jī)原

13、理及應(yīng)用定時器定時器控制位控制位(TMOD)啟動方式啟動方式計(jì)數(shù)脈沖計(jì)數(shù)脈沖引腳引腳定時定時/計(jì)數(shù)計(jì)數(shù)中斷源中斷源TL0模式模式3GATEC/T M1 M0TF0 (TCON)TR0=1P3.4定時定時/計(jì)數(shù)計(jì)數(shù)T0000BH ET0 (IE)TH0模式模式3TF1 (TCON)TR1=1定時定時T1 001BH ET1 (IE)T1模式模式0-2GATE C/TM1 M0C/T切換切換P3.5定時定時/計(jì)數(shù)計(jì)數(shù)無無單片機(jī)原理及應(yīng)用 例例:設(shè)某用戶系統(tǒng)中已使用了:設(shè)某用戶系統(tǒng)中已使用了,并置定時器,并置定時器T1工作模式工作模式2,做串行口波特率發(fā)生器用?,F(xiàn)要求再增加一個外,做串行口波特率發(fā)生

14、器用?,F(xiàn)要求再增加一個外部中斷源,并由部中斷源,并由P1.0引腳輸出一個引腳輸出一個5KHz的方波。的方波。fosc=12MHz。 解解:為了:為了,可設(shè)置可設(shè)置T0工作模式工作模式3計(jì)數(shù)方計(jì)數(shù)方式,把式,把T0的引腳作附加的外部中斷輸入端,的引腳作附加的外部中斷輸入端,TL0的計(jì)數(shù)初值為的計(jì)數(shù)初值為FFH,當(dāng)檢測到,當(dāng)檢測到T0引腳電平出現(xiàn)由引腳電平出現(xiàn)由1至至0的負(fù)跳變時,的負(fù)跳變時,TL0產(chǎn)生產(chǎn)生溢出,申請中斷。這相當(dāng)于邊沿觸發(fā)的外部中斷源。溢出,申請中斷。這相當(dāng)于邊沿觸發(fā)的外部中斷源。 TL0的計(jì)數(shù)初值的計(jì)數(shù)初值為為FFH,TH0的計(jì)數(shù)初值的計(jì)數(shù)初值X計(jì)算如計(jì)算如下:下: P1.0的方

15、波頻率為的方波頻率為5KHz,故周期,故周期 T=1/(5KHz)=0.2ms=200us 用用TH0定時定時100us時,時,X=256-10012/12=156單片機(jī)原理及應(yīng)用定時器定時器定時定時/ 計(jì)數(shù)計(jì)數(shù)功能功能TL0模式模式3計(jì)數(shù)計(jì)數(shù)檢測檢測T0引腳負(fù)跳變引腳負(fù)跳變TH0模式模式3定時定時8位位產(chǎn)生產(chǎn)生5KHz的方波信號的方波信號T1模式模式2定時定時8位位串行口波特率發(fā)生器串行口波特率發(fā)生器單片機(jī)原理及應(yīng)用程序如下程序如下: MOV TMOD,#27H ;T0;T0為模式為模式3,3,計(jì)數(shù)方式計(jì)數(shù)方式;T1;T1為為 模式模式2,2,定時方式定時方式 0010 0111B MOV

16、TL0,#0FFH ; ;置置TL0TL0計(jì)數(shù)初值計(jì)數(shù)初值 MOV TH0,#156 ; ;置置TH0TH0計(jì)數(shù)初值計(jì)數(shù)初值 MOV TH1,#data ;data;data是根據(jù)波特率要求是根據(jù)波特率要求 設(shè)置的設(shè)置的常數(shù)(即初值常數(shù)(即初值) MOV TL1,#data MOV TCON,#55H ;外中斷外中斷0,0,外中斷外中斷1 1邊沿觸發(fā)邊沿觸發(fā), , 啟動啟動T0,T1 T0,T1 0 01 10 01 1 0101B 0101B MOV IE,#9FH ;開放全部中斷;開放全部中斷 單片機(jī)原理及應(yīng)用 TL0溢出中斷服務(wù)程序溢出中斷服務(wù)程序(由由000BH轉(zhuǎn)來轉(zhuǎn)來)TL0INT:

17、 MOV TL0,#0FFH ;TL0重賦初值重賦初值 (中斷處理)(中斷處理) RETI TH0溢出中斷服務(wù)程序溢出中斷服務(wù)程序(由由001BH轉(zhuǎn)來轉(zhuǎn)來) TH0INT: MOV TH0,#156 ;TH0重賦初值重賦初值 CPL P1.0 ;P1.0取反輸出取反輸出 RETI 串行口及外部中斷串行口及外部中斷0,外中斷,外中斷1的服務(wù)程序在此不再一一列出。的服務(wù)程序在此不再一一列出。單片機(jī)原理及應(yīng)用 綜合應(yīng)用舉例綜合應(yīng)用舉例 例例:設(shè)時鐘頻率為:設(shè)時鐘頻率為6MHz。試編寫利用。試編寫利用T0產(chǎn)生產(chǎn)生1s定時的程序。定時的程序。 解解: 因定時時間較長,采用哪一種工作模式合適呢因定時時間較

18、長,采用哪一種工作模式合適呢?可以算出:可以算出: 模式模式0最長可定時最長可定時16.384ms; 模式模式1最長可定時最長可定時131.072ms; 模式模式2最長可定時最長可定時512s。 題中要求定時題中要求定時1s,可,可選模式選模式1,每隔每隔100ms中斷一次中斷一次,中斷,中斷10次為次為1s。 X=15536=3CB0H 因此,因此,(TL0)=0B0H,(TH0)=3CH。單片機(jī)原理及應(yīng)用 對于中斷對于中斷10次計(jì)數(shù),可使次計(jì)數(shù),可使T0工作在計(jì)數(shù)方式,也可用工作在計(jì)數(shù)方式,也可用循環(huán)程序的方法實(shí)現(xiàn)。循環(huán)程序的方法實(shí)現(xiàn)。 ORG 0000H LJMP MAIN ; ;上電,

19、轉(zhuǎn)向主程序上電,轉(zhuǎn)向主程序 ORG 000BH ;T0;T0的中斷入口地址的中斷入口地址 AJMP SERVE ; ;轉(zhuǎn)向中斷服務(wù)程序轉(zhuǎn)向中斷服務(wù)程序 ORG 2000H ; ;主程序主程序 MAIN:MOV SP,#60H ; ;設(shè)堆棧指針設(shè)堆棧指針 MOV B,#0AH ; ;設(shè)循環(huán)次數(shù)設(shè)循環(huán)次數(shù) MOV TMOD,#01H ;設(shè)置設(shè)置T0T0工作模式工作模式1 1 MOV TL0,#0B0H ;裝入計(jì)數(shù)值低裝入計(jì)數(shù)值低8 8位位 MOV TH0,#3CH ;裝入計(jì)數(shù)值高裝入計(jì)數(shù)值高8 8位位 單片機(jī)原理及應(yīng)用 SETB TR0 ;啟動定時器T0 SETB ET0 ;允許T0中斷 SETB

20、 EA ;允許CPU中斷 SJMP $ ;等待中斷 SERVE:MOV TL0,#0B0H MOV TH0,#3CH ;重新賦計(jì)數(shù)值 DJNZ B,LOOP CLR TR0 ;1s定時到,停止T0工作 LOOP:RETI ;中斷返回 END 單片機(jī)原理及應(yīng)用 例例:設(shè)計(jì)定時時鐘程序。:設(shè)計(jì)定時時鐘程序。 解:本例涉及到了定時器與中斷的聯(lián)合應(yīng)用。時鐘就是以秒、解:本例涉及到了定時器與中斷的聯(lián)合應(yīng)用。時鐘就是以秒、分、時為單位進(jìn)行計(jì)時。分、時為單位進(jìn)行計(jì)時。 計(jì)算計(jì)數(shù)初值。時鐘計(jì)時的最小單位是秒,但使用單片機(jī)計(jì)算計(jì)數(shù)初值。時鐘計(jì)時的最小單位是秒,但使用單片機(jī)定時器定時器/計(jì)數(shù)器進(jìn)行定時,即使按方式

21、計(jì)數(shù)器進(jìn)行定時,即使按方式1工作,其最大定時時間也工作,其最大定時時間也只能達(dá)只能達(dá)131ms. 鑒于此,可把定時器的定時時間定為鑒于此,可把定時器的定時時間定為100ms,這樣,計(jì)數(shù)溢出,這樣,計(jì)數(shù)溢出10次即得到時鐘計(jì)時的最小單位次即得到時鐘計(jì)時的最小單位-秒;而秒;而10次計(jì)數(shù)可用軟件方次計(jì)數(shù)可用軟件方法實(shí)現(xiàn)。法實(shí)現(xiàn)。 假定使用定時器假定使用定時器T1,以工作模式,以工作模式1進(jìn)行進(jìn)行100ms的定時。如單片的定時。如單片機(jī)晶振頻率為機(jī)晶振頻率為6MHZ,為得到,為得到100ms定時,設(shè)計(jì)數(shù)初值為定時,設(shè)計(jì)數(shù)初值為X,則,則 單片機(jī)原理及應(yīng)用 采用中斷方式進(jìn)行溢出次數(shù)的累計(jì),記滿采用中斷

22、方式進(jìn)行溢出次數(shù)的累計(jì),記滿10次即得到次即得到秒計(jì)時。秒計(jì)時。 從秒到分和從分到時的計(jì)時是通過累加和數(shù)值比較實(shí)從秒到分和從分到時的計(jì)時是通過累加和數(shù)值比較實(shí)現(xiàn)的。現(xiàn)的。 時鐘顯示及顯示緩存區(qū)部分留給讀者自己設(shè)計(jì)。時鐘顯示及顯示緩存區(qū)部分留給讀者自己設(shè)計(jì)。sHzX36161010010612)2(HCBBDX03110000001111001015536單片機(jī)原理及應(yīng)用 主程序(主程序(MAIN)的主要功能是進(jìn)行定時器)的主要功能是進(jìn)行定時器T1的初的初始化編程并啟動始化編程并啟動T1,然后通過反復(fù)調(diào)用顯示子程序,然后通過反復(fù)調(diào)用顯示子程序,等待等待100ms定時中斷的到來。其流程圖如圖定時中

23、斷的到來。其流程圖如圖6-13所示。所示。 中斷服務(wù)程序(中斷服務(wù)程序(PITO)的主要功能是進(jìn)行計(jì)時操)的主要功能是進(jìn)行計(jì)時操作。程序開始先判斷計(jì)數(shù)溢出是否滿了作。程序開始先判斷計(jì)數(shù)溢出是否滿了10次,不滿次,不滿10次表明還沒達(dá)到最小計(jì)時單位次表明還沒達(dá)到最小計(jì)時單位-秒,中斷返回;滿秒,中斷返回;滿10次表示已達(dá)到最小計(jì)時單位次表示已達(dá)到最小計(jì)時單位-秒,程序繼續(xù)往下運(yùn)行,秒,程序繼續(xù)往下運(yùn)行,進(jìn)行計(jì)時操作。要求滿進(jìn)行計(jì)時操作。要求滿1秒則秒則“秒位秒位”32H單元內(nèi)容加單元內(nèi)容加1,滿,滿60s則則“分位分位”31H單元內(nèi)容加單元內(nèi)容加1,滿,滿60min則則“時位時位”30H單元內(nèi)容

24、加單元內(nèi)容加1,滿,滿24h則將則將30H,31H,32H的內(nèi)容全部清的內(nèi)容全部清0。單片機(jī)原理及應(yīng)用 設(shè)設(shè)T1為模式為模式1設(shè)中斷次數(shù)為設(shè)中斷次數(shù)為10清計(jì)時單元清計(jì)時單元 調(diào)用顯示子程序調(diào)用顯示子程序 啟啟 動動 T1 開開 中中 斷斷圖圖6-13 時鐘主程序流程時鐘主程序流程單片機(jī)原理及應(yīng)用源程序如下:源程序如下: ORG 0000H AJMP MAIN ;上電,轉(zhuǎn)向主程序;上電,轉(zhuǎn)向主程序 ORG 001BH ;T1T1的中斷入口地址的中斷入口地址 AJMP SERVE ;轉(zhuǎn)向中段服務(wù)程序;轉(zhuǎn)向中段服務(wù)程序MAIN:MOV TMOD,#10H ;設(shè);設(shè)T1T1工作于模式工作于模式1 1

25、 MOV 20H,#0AH ;裝入中斷次數(shù);裝入中斷次數(shù) CLR A MOV 30H,A ;時單元清;時單元清0 0 MOV 31H,A ;分單元清;分單元清0 0 MOV 32H,A ;秒單元清;秒單元清0 0 SETB ET1 ;允許;允許T1T1中斷中斷 SETB EA ;允許;允許CPUCPU中斷中斷 MOV TH1,#3CH MOV TL1,#0B0H ;賦計(jì)數(shù)初值;賦計(jì)數(shù)初值 SETB TR1 ;啟動定時器;啟動定時器T1T1單片機(jī)原理及應(yīng)用 SJMP $ ;等待中斷(可反復(fù)調(diào)用;等待中斷(可反復(fù)調(diào)用 顯示子程序)顯示子程序)SERVE:PUSH PSW PUSH ACC ;保護(hù)現(xiàn)場;保護(hù)現(xiàn)場 MOV TH1,#3CH MOV TL1,#0B0H ;重新賦計(jì)數(shù)初值;重新賦計(jì)數(shù)初值 DJNZ 20H,RETUNT ;1s 1s未到,返回未到,返回 MOV 20H,#

溫馨提示

  • 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

提交評論