第8章-2 可編程中斷控制器8259A_第1頁
第8章-2 可編程中斷控制器8259A_第2頁
第8章-2 可編程中斷控制器8259A_第3頁
第8章-2 可編程中斷控制器8259A_第4頁
第8章-2 可編程中斷控制器8259A_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

8259中斷控制器 1.8級優(yōu)先權(quán)控制,通過級連可擴展至64級優(yōu)先權(quán)控制。 2.每一級中斷都可允許或屏蔽。 3.提供中斷向量。 4.可編程選擇多種工作方式單片IR0IR7

INTINTA8259AINTRINTACPU...中斷請求

CPU8259A.....IR0IR7級聯(lián)主8259AIR0從...IR78259AIR0從...IR7INTAINTR7.3可編程中斷控制器Intel8259A8259中斷控制器的內(nèi)部結(jié)構(gòu)7.3可編程中斷控制器Intel8259AIRR:

中斷請求寄存器。SP/ENCAS1CAS0CAS2CSWRRDIR7IR6IR5IR4IR3IR2IR1IR0中斷請求寄存器(IRR)優(yōu)先權(quán)比較器(PR)中斷服務(wù)寄存器(ISR)中斷屏蔽寄存器(IMR)控制邏輯內(nèi)部總線緩沖器內(nèi)部總線緩沖器級聯(lián)緩沖器/比較器級IRTAINTD0~D7A0內(nèi)部總線ISR:

中斷服務(wù)寄存器。IMR:

中斷屏蔽寄存器。PR:

優(yōu)先權(quán)判別器。8259中斷中斷優(yōu)先權(quán)管理方式及中斷結(jié)束方式7.3可編程中斷控制器Intel8259A設(shè)置優(yōu)先級的方式: 完全嵌套方式: 中斷優(yōu)先權(quán)為固定優(yōu)權(quán),IR0~IR7依次下降。中斷嵌套時只能高級中斷低級的中斷,同級和低級不能產(chǎn)生中斷。適用于單片結(jié)構(gòu)。

CPU8259A.....IR0IR7主8259AIR0從...IR78259AIR0從...IR7INTAINTR特殊完全嵌套方式:

在級聯(lián)方式下必須運用特殊完全嵌套方式。同一片的IR0~IR7與完全嵌套方式相同。對于從片,中斷被響應后,并不屏蔽這個從片的中斷,從片中優(yōu)先權(quán)高的中斷申請仍可響應。 主片工作在特殊完全嵌套方式,而從片工作在完全嵌套方式。8259中斷中斷優(yōu)先權(quán)管理方式及中斷結(jié)束方式7.3可編程中斷控制器Intel8259A特殊優(yōu)先權(quán)旋轉(zhuǎn):

根據(jù)用戶的要求將最低優(yōu)先級賦給指定的中斷源。可在主程序或中斷服務(wù)程序中利用置位優(yōu)先權(quán)命令把最低優(yōu)先級賦給某一中斷源,其它中斷的優(yōu)先權(quán)按級別以循環(huán)方式類推。IR5IR6IR7IR0IR1IR2IR3IR4例如,中斷優(yōu)先級依次為IR0到IR7,當中斷IR4被響應,則IR4的中斷優(yōu)先權(quán)變?yōu)樽畹停人鸵患塈R5的優(yōu)先權(quán)變?yōu)樽罡?。相應的?yōu)先權(quán)排隊為IR5、IR6、IR7、IR0、IR1、IR2、IR3、IR4、IR3中斷優(yōu)先權(quán)的旋轉(zhuǎn) 正常優(yōu)先權(quán)旋轉(zhuǎn):

IRi的中斷優(yōu)先權(quán)相等。某個中斷響應,它的優(yōu)先權(quán)變?yōu)樽畹?,比它低一級的中斷源得到最高?yōu)先權(quán)。其它中斷的優(yōu)先權(quán)按級別以循環(huán)方式類推。IR0IR7INTINTA8259A...中斷請求8259中斷中斷優(yōu)先權(quán)管理方式及中斷結(jié)束方式7.3可編程中斷控制器Intel8259A屏蔽方式:查詢排序方式

: 用軟件查詢響應中斷,此時8259不處于中斷狀態(tài),INT可不連接INTR,而是程序查詢IRR決定的是否響應中斷及中斷的優(yōu)先級。

特殊屏蔽方式:

當處理中斷的過程中,希望對本級進行屏蔽,而允許優(yōu)先級比它高或低的中斷申請中斷。特殊屏蔽方式只能用特殊EOI結(jié)束。

普通屏蔽方式:

IMR中的某一位或某幾位置“1”,即可能將相應級的中斷請求屏蔽掉。程序運行的過程中,可以將中斷優(yōu)先級比正在響應的中斷高的中斷屏蔽掉。8259中斷中斷優(yōu)先權(quán)管理方式及中斷結(jié)束方式7.3可編程中斷控制器Intel8259A中斷結(jié)束方式特殊EOI方式: 中斷服務(wù)程序結(jié)束,發(fā)出EOI的同時將當前結(jié)束的中斷級別也傳送給8259。8259將ISR中指定級別的相應位清“0”。顯然這種方式適合于任何情況。

普通EOI方式:

中斷服務(wù)程序結(jié)束,發(fā)出中斷結(jié)束(EOI)命令。在級連的情下則必須送兩個EOI,一個送給從片,另一個送給主片,8259自動將ISR中對應中斷位清“0”

自動EOI方式:

在第二個中斷響應周期的的后沿,自動使中斷源在ISR中的相應位復位,只適用于無中斷嵌套的情況。否則將可能出現(xiàn)自身的重復中斷。T4T3T2T1CLKALED7~D0INTAT4T3T2T1中斷類型碼7.3可編程中斷控制器Intel8259A緩沖方式: 輸出一個低電平允許信號,啟動總線緩沖器與總線相連接。在緩沖方式下必須初始化8259為主、從結(jié)構(gòu)。

ENSP/ENSP/ENSP/非緩沖方式: 單片、多片非級連下工作在非緩沖方式下,作為輸入端,必須接高電平。 多片級連時主片為高電平,從片為低電平。

連接系統(tǒng)總線的方式:

多片8259與系統(tǒng)相連時,8259通過數(shù)據(jù)總線緩沖器與數(shù)據(jù)總線相連,進行數(shù)據(jù)緩沖放大。(ICW4進行初始化)7.3可編程中斷控制器Intel8259A8259芯片的級聯(lián)使用:

在一個系統(tǒng)中,8259可以級聯(lián),有一個主8259,若干個從8259,最多可以有8個從8259,把中斷源擴展到64個。

CPU8259A主IR0IR78259A從IR0IR7中斷源INTAINTRINTINTACAS2CAS1于CAS0CAS2CAS1于CAS0…………ENSP/ENSP/VCCGND 2)CAS2、CAS1、CAS0:主8259為輸出線,從8259為輸入線。 3)INT:從8259的INT線連接到主8259的中斷請求輸入端IRI,主8259連接到CPU的中斷請求輸入端INTR。 4)主8259也可直接從IRI接入中斷源。電路特征: 1)SP/EN主8259接VCC,從8259接GND用以區(qū)分主從關(guān)系。 7.3可編程中斷控制器Intel8259A 1)從8259判斷IRi的優(yōu)先權(quán),經(jīng)INT向主8259發(fā)出中斷請求。 2)主8259判斷從8259的優(yōu)先權(quán)后再向CPU發(fā)出中斷請求。 3)CPU響應中斷,第一個響應周期,主8259通過三條級連線輸出被響應中斷的從8259的編碼。 4)從8259接收編碼,在第二個中斷響應周期輸出它的中斷向量類型碼,進入中斷響應過程。

CPU8259A主IR0IR78259A從IR0IR7中斷源INTAINTRINTINTACAS2CAS1于CAS0CAS2CAS1于CAS0…………ENSP/ENSP/VCCGND級連下的中斷請求:7.3可編程中斷控制器Intel8259A8259的初始化命令及編程嵌套方式 完全嵌套方式:IR0~IR7依次下降。 特殊完全嵌套方式:在級聯(lián)方式主片運用特殊完全嵌套方式優(yōu)先權(quán)旋轉(zhuǎn) 正常優(yōu)先權(quán)旋轉(zhuǎn):中斷響應,優(yōu)先權(quán)為最低,比它低一級的得到最高優(yōu)先權(quán)。 特殊優(yōu)先權(quán)旋轉(zhuǎn):將最低優(yōu)先級賦給指定的中斷源。屏蔽方式 普通屏蔽方式:IMR中的置“1”的位,相應級的中斷請求屏蔽掉。 特殊屏蔽方式:本級進行屏蔽,而允許優(yōu)先級比它高或低的中斷進入 系統(tǒng),不管其優(yōu)先權(quán)如何,在任何情況下都可以申請中斷。結(jié)束方式 自動EOI方式: 第二個中斷響應周期的的后沿,自動復位ISR相應位。 普通EOI方式: 中斷服務(wù)程序結(jié)束,發(fā)出中斷結(jié)束(EOI)命令。 特殊EOI方式: 中斷服務(wù)程序結(jié)束,發(fā)出EOI的同時將近當前結(jié)束的中斷 級別也傳送給8259。7.3可編程中斷控制器Intel8259A分為兩步驟:

1)初始化編程: 寫入2~4個初始化命令字ICW1~ICW4。 2)工作方式編程: 寫入三個工作命令字OCW1~OCW4。以規(guī)定8259的工作方式??梢栽诔跏蓟院蟮娜魏螘r間寫入。8259的初始化命令及編程7.3可編程中斷控制器Intel8259A 1)ICW1、ICW2是必須的。 2)ICW3在級聯(lián)時才有。 3)ICW4是專用于8086系統(tǒng)的。 4)地址線A0、特定標志位、及ICW的輸入順序相配合,完成多寄存器的尋址。初始化編程:ICW2A0=1ICW1A0=0級聯(lián)方式?ICW3NYA0=1ICW4準備好接受中斷需ICW4?YNA0=1 8259初始化命令字ICW有四個,在不同的狀態(tài)下寫入不同。7.3可編程中斷控制器Intel8259AICW1芯片控制字初始化編程:IRX輸入觸發(fā)方式0:上升沿1:高電平D7D6D5D4D3D2D1D0無定義無定義LTIM×1××SNGLICW4×ICW1標志ICW4選擇0:不需要1:需要單片級聯(lián)選擇0:多片級1:單片ICW1ICW2級聯(lián)方式?ICW3ICW4準備好接受中斷NY需ICW4?YNA0=1A0=0A0=1A0=17.3可編程中斷控制器Intel8259AICW2中斷類型字

初始化編程:D7D6D5D4D3D2D1D0由程序決定高5位T6IR7:111IR6:110IR5:101IR4:100IR3:011IR2:010IR1:001IR0:000T7×××T4T5T3ICW1ICW2級聯(lián)方式?ICW3ICW4準備好接受中斷NY需ICW4?YNA0=1A0=0A0=1A0=1例,高5位為00011則其類型號為00011XXXIR0=18H 00011000IR1=19H 00011001……1R7=1FH 000111117.3可編程中斷控制器Intel8259AICW3級聯(lián)控制字初始化編程:D7D6D5D4D3D2D1D0S6Sx=1表示IRX接有從8259Sx=0表示IRX無從8259S7S4S5S3S1S2S0主8259ICW3:D7D6D5D4D3D2D1D00IDi為從片的標識,與主8259的對應IRI的編號相同。

0000ID2從8259ICW3:ID1ID0IR7:111IR6:110IR5:101IR4:100IR3:011IR2:010IR1:001IR0:000ICW1ICW2級聯(lián)方式?ICW3ICW4準備好接受中斷NY需ICW4?YNA0=1A0=0A0=1A0=17.3可編程中斷控制器Intel8259AICW4方式控制字初始化編程:設(shè)定結(jié)束方式0:非自動EOI1:自動EOICPU類型0:8085/80801:8086/8088D7D6D5D4D3D2D1D0BUF000AEOIμPMM/SSFNM級聯(lián)方式優(yōu)先權(quán)管理0:正常完全嵌套方式1:特殊完全嵌套方式主從選擇0:作為從片1:作為主片緩沖方式選擇0:非緩沖方式SP/EN輸入主8259接高電平從8259接低電平1:緩沖方式SP/EN輸出ICW1ICW2級聯(lián)方式?ICW3ICW4準備好接受中斷NY需ICW4?YNA0=1A0=0A0=1A0=17.3可編程中斷控制器Intel8259A例如,8088系統(tǒng)中8259單級使用,其端口地址為80H,和81H,可用下面的初始化程序段輸入命令字。初始化編程:D7D6D5D4D3D2D1D0BUF000AEOIμPMM/SSFNM;ICW4MOV AL,01H ;ICW4 8086配置,非自動EOI,OUT [81H],AL ;非緩沖,完全嵌套方式D7D6D5D4D3D2D1D0T6T7×××T4T5T3;ICW2MOV AL,18H ;ICW2中斷類型碼00011XXX(18H)IR0OUT [81H],ALD7D6D5D4D3D2D1D0LTIM×1××SNGLICW4×ICW1MOV AL,13H ;ICW1設(shè)ICW4,單級,邊沿觸發(fā)OUT [80H],AL ;7.3可編程中斷控制器Intel8259A三個工作命令字OCW1~OCW3OCW1中斷屏蔽字工作命令編程:D7D6D5D4D3D2D1D0M6Mx=1表示IRX被屏蔽Mx=0表示IRX不被屏蔽M7M4M5M3M1M2M0A0=17.3可編程中斷控制器Intel8259AOCW2中斷結(jié)束字,D4、D3=00為標志位工作命令編程:D7D6D5D4D3D2D1D0SLRL2EOI0L1L0OCW2標志07:1116:1105:1014:1003:0112:0101:0010:000SL=1中斷級別選擇001SLREOI命令功能完全嵌套中斷結(jié)束普通EOI011同上,清除ISR中指定位特殊EOI101普通EOI循環(huán)100自動循環(huán)置位000優(yōu)先權(quán)自動循環(huán)自動循環(huán)復位111特殊循環(huán)指定最低級中斷源特殊EOI循環(huán)110置位優(yōu)先權(quán)010無操作優(yōu)先權(quán)自動循環(huán)結(jié)束優(yōu)先權(quán)自動循環(huán)復位A0=07.3可編程中斷控制器Intel8259AOCW3指定設(shè)置特殊屏蔽方式、讀內(nèi)部寄存器命令;D4、D3=00為標志位D7D6D5D4D3D2D1D0查詢選擇0:作為從片1:作為主片SMMXRIS讀ISR位0:禁止1:允許RRESMM特殊屏蔽方式選擇ESMMSMM10:特殊屏蔽方式復位11:特殊屏蔽方式置位PRRRIS010:下次讀IRR011:下次讀ISR00X:無操作1P0讀IRR位0:禁止1:允許工作命令編程:A0=07.3可編程中斷控制器Intel8259A某系統(tǒng)中設(shè)置兩片8259A實現(xiàn)中斷控制,它們之間采用級聯(lián)方式連接,一片從8259的INT端與主8259的IR3端相連,當前主8259的IR0和IR5端上分別引入兩個中斷請求,從8259的IR2和IR3端上也分別引入兩個中斷請求。主8259:IR3:接一片從8259IR0,IR5各接一個中斷源,中斷類型碼分別為30H,35H。中斷服務(wù)程序同段。地址分別為1000H:1050H和1000H:2060H。例,

CPU8259A主IR3IR08259A從IR2IR3中斷源1INTAINTRINTINTACAS2CAS1于CAS0CAS2CAS1于CAS0INTINTAIR5中斷源2中斷源3中斷源4從8259:IR2、IR3各接一個中斷源,中斷類型碼分為32H和33H,中斷服務(wù)程序的地址分別為2000H:5440H和2000H:3620H7.3可編程中斷控制器Intel8259A中斷服務(wù)程序入口地址進入中斷矢量表。中斷矢量地址:30H:30H×4=00C0H35H:35H×4=00D4H32H:32H×4=00C8H33H:33H×4=00CCHPUSH DS ;保存當前數(shù)據(jù)段段基址XOR AX,AXMOV DS,AX ;段地基址指向中斷向量表MOV AX,1050HMOV [0C0H],AX ;30H中斷服務(wù)程序入口地址IPMOV AX,1000HMOV [0C2H],AX ;30H中斷服務(wù)程序入口段地址CSMOV AX,2060HMOV [0D4H],AX ;35H中斷服務(wù)程序入口地址IPMOV AX,1000HMOV [0D6H],AX ;35H中斷服務(wù)程序入口段地址CSMOV AX,5440HMOV [00C8H],AX ;32H中斷服務(wù)程序入口地址IPMOV AX,2000HMOV [00CAH],AX ;32H中斷服務(wù)程序入口段地址CSMOV AX,3620HMOV [00CCH],AX ;33H中斷服務(wù)程序入口地址IPMOV AX,2000HMOV [00CEH],AX ;33H中斷服務(wù)程序入口段地址CSPOP DS程序分為三個部分: 1)中斷服務(wù)程序入口送入中斷矢量表中 2)主8259的初始化程序 3)從8259的初始化程序7.3可編程中斷控制器Intel8259A主8259的端口地址為FFE8H、FFE9H,A0=0對應FFE8H,A1=1對應FFE9HICW1:A0=0,11H=00010001B表示邊沿觸發(fā),級聯(lián),需ICW4(8086)ICW2:A0=1,34H=00110000B表示中斷類型碼30H—37HICW3:A0=1,08H=00001000B表示IR3上接從8259ICW4:A0=1,11H=00010001B表示特殊完全嵌套,非自動EOI,非緩沖方式。OCW1:A0=1,0D6H=11010110B,屏蔽IR7、IR6、IR4、IR2、IR1OCW2:A0=0,20H=00100000B ,普通EOI方式從8259的端口地址為FFFAH、FFFBH。ICW1:A0=0,11H=00010001B表示邊沿觸發(fā),級聯(lián),需ICW4(8086)ICW2:A0=1,30H=00110000B表示中斷類型碼30H—37HICW3:A0=1,03H=00000011B從8259識別碼03H,與主片IR3對應。ICW4:A0=1,11H=00010001B表示特殊完全嵌套,非自動EOI,非緩沖方式。OCW1:A0=1,0F3H=1

溫馨提示

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

評論

0/150

提交評論