資源描述:
《實驗七 外部中斷實驗》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、貴州大學實驗報告紙系別電科班級電科091班姓名學號課程名稱單片機成績評定教師簽名實驗時間2012年5月21日實驗七外部中斷實驗一、實驗目的學習外部中斷技術的基本使用方法。二、實驗內(nèi)容1、INT0端接單次脈沖發(fā)生器。按一次脈沖產(chǎn)生一次中斷,CPU使P1.0狀態(tài)發(fā)生一次反轉(zhuǎn),P1.0接LED燈,以查看信號反轉(zhuǎn)。2、修改程序,實現(xiàn)用一位開關產(chǎn)生外部中斷1,每產(chǎn)生一次,調(diào)用一個流水燈方式,按順序4次一個周期后重復三、實驗要求根據(jù)實驗內(nèi)容編寫一個程序,并在實驗儀上調(diào)試和驗證。四、實驗說明和電路原理圖1)外部中斷的初始
2、化設置共有三項內(nèi)容:中斷總允許即EA=1,外部中斷允許即EXi=1(i=0或1),中斷方式設置。中斷方式設置一般有兩種方式:電平方式和脈沖方式,本實驗選用后者,其前一次為高電平后一次為低電平時為有效中斷請求。因此高電平狀態(tài)和低電平狀態(tài)至少維持一個周期,中斷請求信號由引腳INT0(P3.2)和INT1(P3.3)引入。2)中斷服務的關鍵:a、保護進入中斷時的狀態(tài)。堆棧有保護斷點和保護現(xiàn)場的功能使用PUSH指令,在轉(zhuǎn)中斷服務程序之前把單片機中有關寄存單元的內(nèi)容保護起來。b、必須在中斷服務程序中設定是否允許中斷重
3、入,即設置EX0位。c、用POP指令恢復中斷時的現(xiàn)場。3貴州大學實驗報告附4頁)中斷控制原理:中斷控制是提供給用戶使用的中斷控制手段。實際上就是控制一些寄存器,51系列用于此目的的控制寄存器有四個:TCON、IE、SCON及IP。4)中斷響應的過程:首先中斷采樣然后中斷查詢最后中斷響應。采樣是中斷處理的第一步,對于本實驗的脈沖方式的中斷請求,若在兩個相鄰周期采樣先高電平后低電平則中斷請求有效,IE0或IE1置“1”;否則繼續(xù)為“0”。所謂查詢就是由CPU測試TCON和SCON中各標志位的狀態(tài)以確定有沒有中斷
4、請求發(fā)生以及是那一個中斷請求。中斷響應就是對中斷請求的接受,是在中斷查詢之后進行的,當查詢到有效的中斷請求后就響應一次中斷。本實驗需要用到CPU模塊(F3區(qū))和八位邏輯電平顯示模塊(B5區(qū))、單次脈沖模塊(E3區(qū))。五、實驗程序;//*************************************************;文件名:EXintforMCU51;功能:外部中斷實驗;接線:導線連接單次脈沖模塊的輸出端到CPU模塊的P32,;CPU模塊的P10接八位邏輯電平顯示模塊的L0燈。;//****
5、*********************************************org0ljmpStartorg3LJMPInterrupt0ORG0100HStart:movTCON,#01h;外部中斷0下降沿觸發(fā)movIE,#81h;打開外部中斷允許位(EX0)及總中斷允許位(EA)OK:MOVR2,#04HMOVR1,#0LOP1:CJNER2,#0,LOP1ljmpOKInterrupt0:Output1:CJNER1,#0,Output2mova,#0fEHmovR5,#8loop1:m
6、ovP1,arlaAcallDelay貴州大學實驗報告附4頁djnzR5,loop1LJMPJIESOutput2:cjner1,#1,Output3mova,#07fHmovR5,#8loop2:movP1,arraAcallDelaydjnzR5,loop2LJMPJIESOutput3:CJNER1,#2,Output4mova,#0FFHmovR5,#9loop3:CLRCmovP1,aRRCaAcallDelaydjnzR5,loop3movR5,#8loop4:SETBCRLCAMOVP1,AA
7、callDelaydjnzR5,loop4LJMPJIESOutput4:CJNER1,#3,JIESMOVR3,#00HMOVR4,#09HMOVDPTR,#tab;表首址loop5:MOVA,R3MOVCA,@A+DPTR;查表讀取第一個字節(jié)MOVP1,AINCR3ACALLDELAYDJNZR4,loop5LJMPJIES貴州大學實驗報告附4頁Delay:movr6,#0DelayLoop1:movr7,#0DelayLoop2:NOPNOPdjnzr7,DelayLoop2djnzr6,DelayL
8、oop1retJIES:INCR1DECR2RETItab:DB0FFH,0E7H,0C3H,81H,00H,81H,0C3H,0E7H,0FFHEnd六、實驗步驟1)系統(tǒng)各跳線器處在初始設置狀態(tài),用導線連接單次脈沖模塊的輸出端到CPU模塊的P32;CPU模塊的P10接八位邏輯電平顯示模塊的燈。2)啟動PC機,打開THGMW-51軟件,輸入源程序,并編譯源程序。編譯無誤后,下載程序運行。3)連續(xù)按動單次脈沖產(chǎn)生電