[芯片] 1、接口技術·實驗一·中斷8259


 

 

目錄

一、實驗目的和要求

二、實驗原理與背景

2-1、微處理器的中斷類型

2-2、8259A內部結構

2-3、8259A讀寫控制邏輯

2-4、PC上可屏蔽中斷

三、實驗具體的內容

四、實驗的代碼說明

五、實驗結果的分析

附錄材料


 

一、    實驗目的和要求

學會8259芯片和微機接口原理和方法。

掌握8259中斷芯片的基本工作原理、工作方式和編程原理。

 

二、    實驗原理與背景

2-1、微處理器的中斷類型

 

          圖2.1 微處理器中斷結構圖

2-2、8259A內部結構

 

          圖2.2 8259A內部結構圖

2-3、8259A讀寫控制邏輯

 

          圖2.3 8259A讀寫控制邏輯

 

2-4、PC上可屏蔽中斷

PC機用戶可使用的硬件中斷只有可屏蔽中斷,由8259中斷控制器管理。中斷控制器用於接收外部的中斷請求信號,經過優先級判別等處理后向CPU發出可屏蔽中斷請求。IBMPC、PC/XT機內有一片8259中斷控制器對外可以提供8個中斷源:

  •   中斷源     中斷類型號    中斷功能
  •   IRQ0          08H        時鍾
  •   IRQ1          09H        鍵盤
  •   IRQ2          0AH        保留
  •   IRQ3          OBH        串行口2
  •   IRQ4          0CH        串行口1
  •   IRQ5          0DH        硬盤
  •   IRQ6          0EH        軟盤
  •   IRQ7          0FH        並行打印機

8個中斷源的中斷請求信號線IRQ0~IRQ7在主機的62線ISA總線插座中可以引出,系統已設定中斷請求信號為“邊沿觸發”,普通結束方式。對於PC/AT及286以上微機內又擴展了一片8259中斷控制,IRQ2用於兩片8259之間級聯,對外可以提供16個中斷源:

  •   中斷源     中斷類型號   中斷功能
  •   IRQ8          070H       實時時鍾
  •   IRQ9          071H       用戶中斷
  •   IRQ10         072H       保留
  •   IRQ11         O73H       保留
  •   IRQ12         074H       保留
  •   IRQ13         075H       協處理器
  •   IRQ14         076H       硬盤
  •   IRQ15         077H       保留

TPC-USB實驗板上,將中斷源固定接到3號中斷IRQ3上,即進行中斷實驗時,所用中斷類型號為0BH。

 

三、實驗具體的內容

直接用手動產生單脈沖作為中斷請求信號。要求每按一次開關產生一次中斷,在屏幕上顯示一次“TPCA Interrupt!”,中斷10次后程序退出。步驟如下:

①   連接實驗電路如圖3.1所示。

 

圖3.1  TPC-USB平台中斷實驗連線圖

②   根據流程圖1.2,編程並運行,觀察實驗結果。

 

              圖3.2  TPC-USB平台中斷實驗流程圖

 

四、實驗的代碼說明

 1 data segment
 2   mess db 'tpca interrupt!',0dh,0ah,'$' 
 3 data ends
 4 code segment 
 5     assume cs:code,ds,data
 6 start:
 7 
 8     mov ax, cs
 9     mov ds, ax
10     mov dx,offset int3     ;中斷子程序入口偏移量
11     mov ax,250bh            ;設置中斷的中斷矢量
12     int 21h 
13        
14     cli                     ;CPU清中斷標志
15     in  al,21h             ;設置中斷屏蔽OCW1
16     and al,0f7h            ;開放IRQ3中斷
17     out 21h,al
18     mov cx,10              ;循環10次的循環計數器
19     sti                     ;CPU開中斷
20 ll:                         ;循環等待
21     jmp ll
22 ;-------------------------------------------------    
23 int3:                       ;中斷子程序
24     mov ax,data             ;09中斷顯示字符
25     mov ds,ax
26     mov dx,offset mess
27     mov ah,09
28     int 21h  
29     
30     mov al,20h              ;發出EOI結束中斷
31     out 20h,al               
32     
33     loop next               ;循環(CX為循環計數器)
34     
35     in al,21h               ;循環結束后關閉IRQ3中斷
36     or al,08h
37     out 21h,al   
38     
39     sti                      ;開中斷
40     mov ah,4ch              ;結束程序
41     int 21h
42     
43 next:
44     iret
45 code ends
46 end start

 

五、實驗結果的分析

直接用手動產生單脈沖作為中斷請求信號。要求每按一次開關產生一次中斷,在屏幕上顯示一次“TPCA Interrupt!”,中斷10次后程序退出。

 

         圖5.1 實驗DOS窗口截圖

附錄材料

 

 

本文鏈接: http://www.cnblogs.com/zjutlitao/p/4172171.html

更多精彩:http://www.cnblogs.com/zjutlitao/p/4125085.html 

文檔下載:http://pan.baidu.com/s/1i3469X7

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM