單片機(jī)中斷實驗實驗報告_第1頁
單片機(jī)中斷實驗實驗報告_第2頁
單片機(jī)中斷實驗實驗報告_第3頁
單片機(jī)中斷實驗實驗報告_第4頁
單片機(jī)中斷實驗實驗報告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、MAIN:SETBEA/*首先開啟總中斷*/實驗三中斷實驗一、實驗內(nèi)容當(dāng)單片機(jī)的INTO端出現(xiàn)負(fù)脈沖時,進(jìn)入相應(yīng)的中斷服務(wù)程序,P1口做輸出口,接8只發(fā)光二極管,通過程序控制發(fā)光二極管依次點亮。選擇外部中斷0(P3.2)接按鍵INTO到地,按下出現(xiàn)負(fù)脈沖時,進(jìn)入相應(yīng)的中斷服務(wù)程序,在中斷服務(wù)程序中,數(shù)碼管顯示加1,在0-9之間循環(huán)。二、實驗?zāi)康?、學(xué)習(xí)外部中斷技術(shù)的基本使用方法。2、學(xué)習(xí)中斷處理程序的編程方法。三、實驗原理(中斷原理部分參考教材填寫)本實驗中斷處理程序的應(yīng)用,最主要的地方是如何保護(hù)進(jìn)入中斷前的狀態(tài),使得中斷程序執(zhí)行完畢后能回到交通燈中斷前的狀態(tài)。要保護(hù)的地方,除了累加器ACC、

2、標(biāo)志寄存器PSW外,還要注意。一是主程序中的延時程序和中斷處理程序中的延時程序不能混用,本實驗中,主程序延時用的寄存器和中斷延時用的寄存器應(yīng)不相同。四、實驗電路(參考學(xué)習(xí)板說明書Pagell)五、接線方式(參考學(xué)習(xí)板說明書Pagell)Pl口接發(fā)光二極管的LlL8;單脈沖輸出端“口”接INI0,即接89C51的P3.2管腳。六、參考程序程序一、ORG0030Htmpdate:DB01H,02H,04H,08H,10H,20H,40H,80H/*定義常量做為輸出*/ORG0000HLJMPMAINORG0003HLJMPINTSETBEX0/*開啟外部中斷0*/SETBIT0/*設(shè)置成下降沿觸發(fā)

3、方式*/MOVR7,#8MOVDPTR,#TMPDATEL0:SJMPL0/等待中斷INT:DJNZR7,L1/*外部中斷0每按一次主板上的INTO鍵,中斷響應(yīng),調(diào)用該函數(shù),我們從P1口輸出點亮發(fā)光二極管*/MOVR7,#8L1:MOVA,R7MOVCA,A+DPTRCPLAMOVP1,ARETIEND程序二、功能:按下按鍵,數(shù)碼管加1,用中斷的方法作者:txl時間:2009-04版本:V1.0/TxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTx

4、TxTxTxTxTxTxTxTxTxTxTxTxTx/#include#defineuintunsignedint#defineucharunsignedcharsbitwei1=P2A0;sbitkey1=P3A2;ucharcodetable=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90,0 x88,0 x83,0 xC6,0 xAl,0 x86,0 x8E;共陽數(shù)碼管碼表/全局變量ucharnum;/函數(shù)聲明voiddelay(uintz);voidled_show(uchartemp);voidmain()/中斷

5、以下降沿方式觸發(fā)/中斷以低電平方式觸發(fā)/允許外部中斷0中斷/總中斷開num=0;/IT0=l;IT0=0;EX0=l;EA=l;weil=0;while(l)led_show(num);/顯示/TxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTx功能:外部中斷0入口*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*

6、1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*1*/TxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTx/voidEX0_Int()interrupt0EX0=0;/關(guān)中斷num+;if(num=l0)num=0;while(!key1);消除抖動delay(5);while(!key1);/for(;!key1;);/等待放開

7、EX0=1;/開中斷voiddelay(uintz)uintx,y;for(x=z;x0;x-)for(y=110;y0;y-);voidled_show(uchartemp)P0=tabletemp;delay(5);擴(kuò)展程序三、#includesbitled=P1A0;#defineshumaP0sbitLED_0=P2A0;sbitLED_1=P2A1;sbitLED_2=P2A2;sbitLED_3=P2A3;unsignedcharm;unsignedintcodeton7;/包含頭文件/數(shù)碼管數(shù)據(jù)口/定義數(shù)碼管4個控制位voiddisplay(unsignedchard1,unsi

8、gnedchard2,unsignedchard3,unsignedchard4);unsignedchara16=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e;/共陽極數(shù)碼管的段碼0123456789ABCDEF定時初值計算方法:以5ms為例,5ms=5000us,0 xffff-5000/1.085即為TH和TL的值voidint1()interrupt3/T1中斷,時間是5ms/關(guān)中斷裝定時器初值實現(xiàn)5ms定TR1=0;TH1=0 xed;時T

9、L1=0 xff;ET1=1;TR1=1;display(1,2,3,4);/開中斷/在中斷里顯示數(shù)字voidmain(void)/設(shè)置為T1定時器/裝定時器初值/開中斷m=1;TMOD=0 x10;TH1=0 xed;TL1=0 xff;TR1=1;ET1=1;EA=1;while(1)voiddisplay(unsignedchard1,unsignedchard2,unsignedchard3,unsignedchard4)if(m=1)/每進(jìn)入一次中斷顯示1位,用變量m作為顯示位標(biāo)識LED_0=0;LED_1=LED_2=LED_3=1;shuma=ad1;if(m=2)LED_1=0;LED_0=LED_2=LED_3=1;shuma=ad2;if(m=3)LED_2=0;LED_1=LED_0=LED_3=1;shuma=ad3;if(m=

溫馨提示

  • 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

提交評論