微機中斷實驗[學習類別]_第1頁
微機中斷實驗[學習類別]_第2頁
免費預覽已結束,剩余13頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、深 圳 大 學 實 驗 報 告 課程名稱: 微機原理與接口技術 實驗項目名稱: 8259中斷實驗 學院: 信息工程學院 專業(yè): 通信工程 指導教師: 報告人: 學號: 班級: 實驗時間: 實驗報告提交時間: 教務處制一、 實驗目的: 1. 掌握8259 中斷控制器的工作原理。 2. 學習8259 的應用編程方法。3. 掌握8259 級聯方式的使用方法。二、 實驗儀器PC 機一臺,TD-PITE 實驗裝置或TD-PITC 實驗裝置一套。三、 實驗原理 1. 中斷控制器8259 簡介在Intel 386EX 芯片中集成有中斷控制單元(ICU),該單元包含有兩個級聯中斷控制器,一個為主控制器,一個為

2、從控制器。該中斷控制單元就功能而言與工業(yè)上標準的82C59A 是一致的,操作方法也相同。從片的INT 連接到主片的IR2 信號上構成兩片8259 的級聯。在TD-PITE 實驗系統(tǒng)中,將主控制器的IR6、IR7 以及從控制器的IR1 開放出來供實驗使用,主片8259 的IR4 供系統(tǒng)串口使用。8259 的內部連接及外部管腳引出如圖(1)。 圖(1)8259內部連接及外表管腳 表1 列出了中斷控制單元的寄存器初始化命令字1 寄存器(ICW1)說明見圖(2)所示。 圖(2)初始化命令字2 寄存器(ICW2)說明見圖(3)所示。 圖(3)初始化命令字3 寄存器(ICW3)說明,主片見圖(4),從片見

3、圖(5) 圖(4) 圖(5)初始化命令字4 寄存器(ICW4)說明見圖(6) 圖(6)操作命令字1 寄存器(OCW1)說明見圖(7) 圖(7) 操作命令字2 寄存器(OCW2)說明如圖(8)所示。圖(8)操作命令字3 寄存器(OCW3)說明如圖(9)所示。圖(9)查詢狀態(tài)字(POLL)說明如圖(10) 所示。圖(10)在對8259 進行編程時,首先必須進行初始化。一般先使用CLI 指令將所有的可屏蔽中斷禁止,然后寫入初始化命令字。8259 有一個狀態(tài)機控制對寄存器的訪問,不正確的初始化順序會造成異常初始化。在初始化主片8259 時,寫入初始化命令字的順序是:ICW1、ICW2、ICW3、然后是

4、ICW4,初始化從片8259 的順序與初始化主片8259 的順序是相同的。系統(tǒng)啟動時,主片8259 已被初始化,且4 號中斷源(IR4)提供給與PC 聯機的串口通信使用,其它中斷源被屏蔽。中斷矢量地址與中斷號之間的關系如下表所示:四、 實驗內容與步驟1. 8259 單中斷實驗實驗接線圖如圖(11)所示,單次脈沖輸出與主片8259 的IR7 相連,每按動一次單次脈沖,產生一次外部中斷,在顯示屏上輸出一個字符“7”。 圖(11)實驗步驟(1)按圖(11) 連接實驗線路。(2)編寫實驗程序,經編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,重復按單次脈沖開關KK1,顯示屏會顯示字符“7”,說明響應了中斷實

5、驗程序清單如下:SSTACK SEGMENT STACK DW 32 DUP(?)SSTACK ENDSCODE SEGMENT ASSUME CS:CODESTART: PUSH DS MOV AX,0000H MOV DS,AX MOV AX,OFFSET MIR7 MOV SI,003CH MOV SI,AX MOV AX,CS MOV SI,003EHMOV SI,AX CLI POP DS ;初始化主片8259 MOV AL,11H OUT 20H,AL MOV AL,08H OUT 21H,AL MOV AL,04H OUT 21H,AL MOV AL,01H OUT 21H,AL

6、 MOV AL,6FH OUT 21H,AL STIAA1: NOP JMP AA1MIR7: STI CALL DELAY MOV AX,0137H INT 10H MOV AX,0120H INT 10H MOV AL,20H OUT 20H,AL IRETDELAY: PUSH CX MOV CX,0F00HAA0: PUSH AX POP AX LOOP AA0 POP CX RETCODE ENDS END START運行結果如下: 2. 8259 級聯實驗 實驗接線圖如圖(12)所示,KK1連接到主片8259 的IR7 上,KK2連接到從片8259 的IR1 上,當按一次KK1時,

7、顯示屏上顯示字符“M7”,按一次KK2時,顯示字符“S1”。編寫程序。圖(12)實驗步驟(1)按圖(12)連接實驗線路。(2)輸入程序,編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,按動KK1或KK2,觀察實驗結果,驗證實驗程序的正確性。(4)若同時按下KK1和KK2,觀察實驗結果,解釋實驗現象實驗程序清單如下:SSTACK SEGMENT STACK DW 32 DUP(?)SSTACK ENDSCODE SEGMENT ASSUME CS:CODESTART: PUSH DS MOV AX,0000H MOV DS,AX MOV AX,OFFSET MIR7 MOV SI,003CH MOV

8、SI,AX MOV AX,CS MOV SI,003EH MOV SI,AX MOV AX,OFFSET SIR1 MOV SI,00C4H MOV SI,AX MOV AX,CS MOV SI,00C6H MOV SI,AX CLI POP DS ;初始化主片8259 MOV AL,11H OUT 20H,AL MOV AL,08H OUT 21H,AL MOV AL,04H OUT 21H,AL MOV AL,01H OUT 21H,AL MOV AL,6FH OUT 21H,AL ;初始化從片8259 MOV AL,11H OUT 0A0H,AL MOV AL,30H OUT 0A1H,

9、AL MOV AL,02H OUT 0A1H,AL MOV AL,01H OUT 0A1H,AL MOV AL,0FDH OUT 0A1H,AL MOV AL,6BH OUT 21H,AL STIAA1: NOP JMP AA1MIR7: STI CALL DELAY MOV AX,0137H INT 10H MOV AX,0120H INT 10H MOV AL,20H OUT 20H,AL IRETSIR1: CALL DELAY MOV AX,0153H INT 10H MOV AX,0131H INT 10H MOV AX,0120H INT 10H MOV AX,20H OUT 0A0H,AL OUT 20H,AL IRETDELAY: PUSH CX MOV CX,0F00HAA0: PUSH AX POP AX LOOP AA0 POP CX RETCODE ENDS END START實驗運行結果如下:按一次KK1時,顯示屏上顯示字符“M7”按一次KK2時,顯示字符“S1”。同時按下KK1+和KK2+時“M7”和“S1”交替出現。五、 實驗

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論