第9章輸入輸出控制技術(shù)_第1頁
第9章輸入輸出控制技術(shù)_第2頁
第9章輸入輸出控制技術(shù)_第3頁
第9章輸入輸出控制技術(shù)_第4頁
第9章輸入輸出控制技術(shù)_第5頁
已閱讀5頁,還剩81頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微機原理與接口技術(shù)第第9 9章章 輸入輸出控制技術(shù)輸入輸出控制技術(shù)9.1 9.1 輸入輸出接口概述輸入輸出接口概述1. CPU與外設(shè)之間的連接與外設(shè)之間的連接I/O接口接口I/O接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完成接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路數(shù)據(jù)傳送和控制任務(wù)的邏輯電路PC機系統(tǒng)板的可編程接口芯片、機系統(tǒng)板的可編程接口芯片、I/O總線槽的總線槽的電路板(適配器)都是接口電路電路板(適配器)都是接口電路微機原理與接口技術(shù)為什么需要為什么需要I/O接口(電路)?接口(電路)?微機的外部設(shè)備多種多樣微機的外部設(shè)備多種多樣工作原理、驅(qū)動方式、信息格式、以及工作速工作

2、原理、驅(qū)動方式、信息格式、以及工作速度方面彼此差別很大度方面彼此差別很大它們不能與它們不能與CPU直接相連直接相連必須經(jīng)過中間電路再與系統(tǒng)相連必須經(jīng)過中間電路再與系統(tǒng)相連這部分電路被稱為這部分電路被稱為I/O接口電路接口電路9.1 9.1 輸入輸出接口概述輸入輸出接口概述微機原理與接口技術(shù)9.1 9.1 輸入輸出接口概述輸入輸出接口概述2. 接口電路的基本結(jié)構(gòu)接口電路的基本結(jié)構(gòu)控制總線控制總線CB地址總線地址總線ABI/O接口電路接口電路數(shù)據(jù)數(shù)據(jù)控制控制狀態(tài)狀態(tài)數(shù)據(jù)總線數(shù)據(jù)總線DBCPU外設(shè)外設(shè)控制寄存器控制寄存器狀態(tài)寄存器狀態(tài)寄存器數(shù)據(jù)寄存器數(shù)據(jù)寄存器微機原理與接口技術(shù)數(shù)據(jù)信息可以有各種形式

3、:數(shù)據(jù)信息可以有各種形式:數(shù)字量數(shù)字量。大多數(shù)信息是數(shù)字信息,即二進(jìn)。大多數(shù)信息是數(shù)字信息,即二進(jìn) 制信息或者代表字符的制信息或者代表字符的ASCII碼碼開關(guān)量開關(guān)量。開關(guān)量實際是數(shù)字信息,但一般只。開關(guān)量實際是數(shù)字信息,但一般只占用一位二進(jìn)制信息,以表示開關(guān)的打開或占用一位二進(jìn)制信息,以表示開關(guān)的打開或閉合。閉合。模擬量模擬量。通過接口的模擬量,要變換為數(shù)字。通過接口的模擬量,要變換為數(shù)字量,再加到計算機。量,再加到計算機。9.1 9.1 輸入輸出接口概述輸入輸出接口概述微機原理與接口技術(shù)狀態(tài)信息主要是反映外設(shè)的工作狀態(tài)。狀態(tài)信息主要是反映外設(shè)的工作狀態(tài)。對于輸入設(shè)備對于輸入設(shè)備,可以表示它

4、是否準(zhǔn)備好數(shù)據(jù),可以表示它是否準(zhǔn)備好數(shù)據(jù),有數(shù)據(jù)已準(zhǔn)備好,才啟動有數(shù)據(jù)已準(zhǔn)備好,才啟動CPU一次讀入操作。一次讀入操作。對于輸出設(shè)備對于輸出設(shè)備,可以反映它是否已經(jīng)把上一個,可以反映它是否已經(jīng)把上一個數(shù)據(jù)處理完,只有上一個數(shù)據(jù)處理完,才可以數(shù)據(jù)處理完,只有上一個數(shù)據(jù)處理完,才可以啟動啟動CPU的下一次輸出操作。的下一次輸出操作。狀態(tài)信息也可以是狀態(tài)信息也可以是CPU傳送給外部設(shè)備的,傳傳送給外部設(shè)備的,傳送送CPU的狀態(tài)。狀態(tài)信息也稱為握手信息。的狀態(tài)。狀態(tài)信息也稱為握手信息。9.1 9.1 輸入輸出接口概述輸入輸出接口概述微機原理與接口技術(shù)控制信息一般是控制信息一般是CPU通過接口電路傳送給

5、外部通過接口電路傳送給外部設(shè)備的,一般控制外部設(shè)備的動作。這三種信設(shè)備的,一般控制外部設(shè)備的動作。這三種信息,將都通過數(shù)據(jù)總線在息,將都通過數(shù)據(jù)總線在CPU和接口之間傳送。和接口之間傳送。從形式上看,三種信息并沒有差別,都是二進(jìn)從形式上看,三種信息并沒有差別,都是二進(jìn)制信息。如制信息。如10000000,既可以是數(shù)據(jù)信息,代,既可以是數(shù)據(jù)信息,代表十進(jìn)制數(shù)表十進(jìn)制數(shù)128,也可以是一種狀態(tài)信息,或,也可以是一種狀態(tài)信息,或一種控制信息。一種控制信息。9.1 9.1 輸入輸出接口概述輸入輸出接口概述微機原理與接口技術(shù)9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式1.1.程序傳送

6、程序傳送無條件傳送和查詢傳送無條件傳送和查詢傳送2.2.中斷傳送中斷傳送3.DMA3.DMA傳送傳送微機原理與接口技術(shù)9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式1. 程序傳送程序傳送(1)無條件傳送)無條件傳送對固定的外設(shè)在規(guī)定時間用IN和OUT指令來進(jìn)行信息的輸入輸出。輸入三態(tài)輸入三態(tài)輸出緩存輸出緩存微機原理與接口技術(shù)IOR三態(tài)緩沖器OEI/O裝置地址譯碼器CSD7D0A15A1A00160HMOV DX, 160HINAL, DX9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)74LS244+5V10K x 8G1 G2數(shù)據(jù)總線數(shù)據(jù)總

7、線CSRDMOV DX, 160HINAL, DX9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)地址譯碼器數(shù)據(jù)鎖存器A15A1IOWA0CS0160H輸出設(shè)備D7D0MOV DX, 160HMOV AL, BXOUT DX, AL9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)+5V74LS373300 x 8LE OE數(shù)據(jù)總線數(shù)據(jù)總線CSWRMOV DX, 160HMOV AL, BXOUT DX, AL9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方

8、式與外設(shè)之間數(shù)據(jù)傳送的方式例例9-1 一個采用同步傳送的數(shù)據(jù)采集系統(tǒng)入一個采用同步傳送的數(shù)據(jù)采集系統(tǒng)入圖圖9-4所示。所示。(1)復(fù)位。()復(fù)位。(2)延時后,采集第一個通道。)延時后,采集第一個通道。(3)將高)將高8位和低位和低8位位BCD碼存入內(nèi)存碼存入內(nèi)存(4)利用移位循環(huán)實現(xiàn))利用移位循環(huán)實現(xiàn)8個模擬量的依次采集、輸入與轉(zhuǎn)存?zhèn)€模擬量的依次采集、輸入與轉(zhuǎn)存微機原理與接口技術(shù)START: MOV DX,0100H LEA BX ,DSTOR XOR AL,ALAGIGN: MOV AL,DL OUT 20H,AL CALL NEAR DELAY1 MOV AL,DH OUT 20H,AL

9、 CALL NEAR DELAY2 IN AX ,10H MOV BX,AX INC BX INC BX RCL DH,1 JNC AGIGNDONE: 9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式例:例:9-1微機原理與接口技術(shù)(2) 程序查詢傳送程序查詢傳送9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式CPU需要先了解(查詢)外設(shè)的工作狀態(tài),然后需要先了解(查詢)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換信息的情況下(在外設(shè)可以交換信息的情況下(就緒就緒)實現(xiàn)數(shù)據(jù))實現(xiàn)數(shù)據(jù)輸入或輸出輸入或輸出對多個外設(shè)的情況,則對多個外設(shè)的情況,則CPU按一定順序依次查詢按一

10、定順序依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換查詢傳送的特點是:工作可靠,適用面寬,但傳查詢傳送的特點是:工作可靠,適用面寬,但傳送效率低送效率低微機原理與接口技術(shù)程序查詢輸入程序查詢輸入尋址狀態(tài)口尋址狀態(tài)口讀取狀態(tài)寄存器的標(biāo)志位讀取狀態(tài)寄存器的標(biāo)志位若不就緒就繼續(xù)查詢,直至就緒若不就緒就繼續(xù)查詢,直至就緒9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)輸入狀態(tài)輸入狀態(tài)就緒?就緒?數(shù)據(jù)輸入數(shù)據(jù)輸入YNPOLL: IN AL, STATUS_PORT TEST AL, 80H JE POLL IN AL, DATA

11、_PORT 9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式程序查詢輸出程序查詢輸出微機原理與接口技術(shù)輸入狀態(tài)輸入狀態(tài)就緒?就緒?數(shù)據(jù)輸入數(shù)據(jù)輸入YNPOLL: IN AL, STATUS_PORT TEST AL, 80H JNE POLL MOV AL,STORE OUT DATA-PORT,AL9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)采集過程要求:采集過程要求:(1)初始化;()初始化;(2)先停止)先停止A/D轉(zhuǎn)換轉(zhuǎn)換(3)啟動)啟動A/D轉(zhuǎn)換,查

12、輸入狀態(tài)信息轉(zhuǎn)換,查輸入狀態(tài)信息READY(4)當(dāng)輸入數(shù)據(jù)已轉(zhuǎn)換完()當(dāng)輸入數(shù)據(jù)已轉(zhuǎn)換完(REDAY=1),則經(jīng)由端口),則經(jīng)由端口3輸入至輸入至CPU的累加器的累加器 AL,并轉(zhuǎn)入內(nèi)存。,并轉(zhuǎn)入內(nèi)存。(5)設(shè)置下一個內(nèi)存單元與下一個輸入通道,循環(huán))設(shè)置下一個內(nèi)存單元與下一個輸入通道,循環(huán)8次。次。9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)START: MOV DL, 0F8H MOV AX, SEG DSTOR MOV ES, AX LEA DI,DSTORAGAIN: MOV AL, DL AND AL, 0EFH OUT 04, AL CALL D

13、ELAY MOV AL,DL OUT 04,ALPOLL: IN 02H SHR AL,1 JNC POLL IN AL, 03 STOSB INC DL CMP DL,0FFH JNE AGAIN 程序如下:程序如下:9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)例:如下圖所示,試編程實現(xiàn)將例:如下圖所示,試編程實現(xiàn)將48000H為首地為首地址的順序址的順序100個單元的數(shù)據(jù),利用查詢方式輸個單元的數(shù)據(jù),利用查詢方式輸出到外設(shè)。出到外設(shè)。 9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)START: MOV AX,4000

14、H MOV DS,AX MOV SI,8000H MOV CX,100GOON: MOV DX,00F1HWAIT: IN AL,DX AND AL,01H JZ WAIT MOV AL,SI MOV DX,00F0H OUT DX,AL INC SI LOOP GOON RET9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)2.中斷傳送中斷傳送9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式斷點斷點主程序主程序中斷服務(wù)程序中斷服務(wù)程序中斷請求中斷請求對外設(shè)對外設(shè)進(jìn)行處理進(jìn)行處理繼續(xù)執(zhí)行繼續(xù)執(zhí)行返回斷點返回斷點CPU在執(zhí)行程序中,在執(zhí)行程序中,

15、被內(nèi)部或外部的事件被內(nèi)部或外部的事件所打斷,轉(zhuǎn)去執(zhí)行一所打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷段預(yù)先安排好的中斷服務(wù)程序;服務(wù)結(jié)束服務(wù)程序;服務(wù)結(jié)束后,又返回原來的斷后,又返回原來的斷點,繼續(xù)執(zhí)行原來的點,繼續(xù)執(zhí)行原來的程序程序微機原理與接口技術(shù)9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式3. 直接存儲直接存儲器存取傳送器存取傳送(DMA)微機原理與接口技術(shù) CPU對對DMA控制器進(jìn)行初始化設(shè)置控制器進(jìn)行初始化設(shè)置 外設(shè)、外設(shè)、DMAC和和CPU三者通過應(yīng)答信號三者通過應(yīng)答信號建立聯(lián)系:建立聯(lián)系:CPU將總線交給將總線交給DMAC控制控制 DMA傳送傳送DMA讀存儲器:存儲器讀

16、存儲器:存儲器 外設(shè)外設(shè)DMA寫存儲器:存儲器寫存儲器:存儲器 外設(shè)外設(shè) 自動增減地址和計數(shù),判斷傳送完成否自動增減地址和計數(shù),判斷傳送完成否9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)HLDA發(fā)存儲器地址發(fā)存儲器地址傳送數(shù)據(jù)傳送數(shù)據(jù)傳送結(jié)束?傳送結(jié)束?DMA結(jié)束結(jié)束修改地址指針修改地址指針9.2 CPU 與外設(shè)之間數(shù)據(jù)傳送的方式與外設(shè)之間數(shù)據(jù)傳送的方式微機原理與接口技術(shù)9.3 中斷技術(shù)中斷技術(shù)中斷:中斷:CPU執(zhí)行程序時,外設(shè)向執(zhí)行程序時,外設(shè)向CPU發(fā)中斷請發(fā)中斷請求,求,CPU接收到中斷請求并在一定條件下,暫接收到中斷請求并在一定條件下,暫時停止執(zhí)行

17、原來的程序而轉(zhuǎn)去處理中斷,處理時停止執(zhí)行原來的程序而轉(zhuǎn)去處理中斷,處理好中斷服務(wù)再返回繼續(xù)執(zhí)行原來的程序,這一好中斷服務(wù)再返回繼續(xù)執(zhí)行原來的程序,這一過程稱為中斷。過程稱為中斷。9.3.1 中斷概述中斷概述微機原理與接口技術(shù)引起引起CPU中斷的事件中斷的事件中斷源。中斷源。例如:例如:外設(shè)外設(shè)請求輸入輸出數(shù)據(jù),報告故障等請求輸入輸出數(shù)據(jù),報告故障等事件事件掉電、硬件故障、軟件錯誤、非法操掉電、硬件故障、軟件錯誤、非法操作、定時時間到等作、定時時間到等中斷源分為:外部中斷、內(nèi)部中斷中斷源分為:外部中斷、內(nèi)部中斷內(nèi)部中斷:內(nèi)部中斷:CPU內(nèi)部執(zhí)行程序時自身產(chǎn)生的中斷內(nèi)部執(zhí)行程序時自身產(chǎn)生的中斷外部

18、中斷:外部中斷:CPU以外的設(shè)備、部件產(chǎn)生的中斷以外的設(shè)備、部件產(chǎn)生的中斷9.3.1 中斷概述中斷概述微機原理與接口技術(shù)中斷系統(tǒng)應(yīng)具有下列功能中斷系統(tǒng)應(yīng)具有下列功能(1)能響應(yīng)中斷、處理中斷與返回。)能響應(yīng)中斷、處理中斷與返回。(2)能實現(xiàn)優(yōu)先權(quán)排隊。)能實現(xiàn)優(yōu)先權(quán)排隊。(3)高級中斷源能中斷低級的中斷處理。)高級中斷源能中斷低級的中斷處理。9.3.1 中斷概述中斷概述微機原理與接口技術(shù)9.3.2 單個中斷源的中斷單個中斷源的中斷微機原理與接口技術(shù)9.3.2 單個中斷源的中斷單個中斷源的中斷被響應(yīng)的條件被響應(yīng)的條件無總線請求無總線請求中斷未被屏蔽中斷未被屏蔽響應(yīng)中斷的時間響應(yīng)中斷的時間IFIF

19、1 1指令執(zhí)行完畢指令執(zhí)行完畢中斷操作中斷操作發(fā)響應(yīng)信號發(fā)響應(yīng)信號關(guān)中斷關(guān)中斷保護(hù)斷點保護(hù)斷點轉(zhuǎn)入中斷服務(wù)程序轉(zhuǎn)入中斷服務(wù)程序微機原理與接口技術(shù)9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)非屏蔽中斷請求非屏蔽中斷請求INT2(0008H)可屏蔽中斷請求可屏蔽中斷請求硬件提供中斷向量中斷類硬件提供中斷向量中斷類型碼型碼32255中斷系統(tǒng)中斷系統(tǒng)NMIINTR用戶定義用戶定義軟件中斷軟件中斷INTn單步中斷單步中斷INT1斷點中斷斷點中斷INT3除法錯誤除法錯誤INT0溢出中斷溢出中斷指令指令I(lǐng)NT0INT4內(nèi)部軟中斷內(nèi)部軟中斷微機原理與接口技術(shù)非屏蔽中斷請求NMI軟件中斷軟件中斷硬件中斷硬

20、件中斷9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)1.外部中斷 也稱硬件中斷,是由CPU的外部中斷請求信號觸發(fā)的一種中斷,分為不可屏蔽中斷NMI和可屏蔽中斷INTR。(1)可屏蔽中斷)可屏蔽中斷INTR CPU將根據(jù)中斷允許標(biāo)志位IF的狀態(tài)決定是否響應(yīng)。如果IF=0,CPU關(guān)中斷,將拒絕響應(yīng);如果IF=1,CPU開中斷,允許響應(yīng)。 (2)不可屏蔽中斷)不可屏蔽中斷NMI 它不受中斷允許標(biāo)志位IF的影響,即使在關(guān)中斷(IF=0)的情況下,CPU也能在當(dāng)前指令執(zhí)行完畢后就響應(yīng)NMI上的中斷請求。9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù) 2、內(nèi)部中

21、斷、內(nèi)部中斷 也稱軟件中斷,是由處理器檢測到異常情況或也稱軟件中斷,是由處理器檢測到異常情況或執(zhí)行軟件中斷指令所引起的一種中斷。內(nèi)部中斷又可執(zhí)行軟件中斷指令所引起的一種中斷。內(nèi)部中斷又可分為:分為:(1)除法出錯中斷(類型)除法出錯中斷(類型0););(2)INTO溢出中斷(類型溢出中斷(類型4););(3)單步中斷(類型)單步中斷(類型1););(4)斷點中斷(類型)斷點中斷(類型3););(5)INT n中斷(類型中斷(類型n)。)。 9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)3.內(nèi)部中斷的特點:內(nèi)部中斷的特點:(1)中斷矢量號是由CPU自動提供的,不需要執(zhí)行中斷

22、響應(yīng)總線周期去讀取矢量號。(2)除單步中斷外,所有內(nèi)部中斷都無法禁止,即都不能通過執(zhí)行CLI指令使IF位清零來禁止對它們的響應(yīng)。(3)除單步中斷外,任何內(nèi)部中斷的優(yōu)先權(quán)都比外部中斷高。8086CPU的中斷優(yōu)先權(quán)順序為:內(nèi)部中斷(除法出錯中斷、INT n指令中斷、INTO溢出中斷、斷點中斷)、NMI中斷、INTR中斷和單步中斷。9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)4.中斷向量表中斷向量表 除 法 中 斷 入 口 單 步 中 斷 入 口 N M I 中 斷 入 口 斷 點 中 斷 入 口 溢 出 中 斷 入 口 類 型 5 中 斷 入 口 IP C S 0 0 0

23、0 H 0 0 0 4 H 0 0 0 8 H 0 0 0 C H 0 0 1 0 H 0 0 1 4 H 類 型 3 1 H 中 斷 入 口 類 型 3 2 H 中 斷 入 口 0 0 C 4 H 0 0 C 8 H 類 型 0 F F H 中 斷 入 口 0 3 F C H 圖 7 -5 8 0 8 6 中 斷 矢 量 表 示 意 圖 專 用 中 斷 備 用 中 斷 用 戶 中 斷 每種中斷都指定一個每種中斷都指定一個中斷向量號,每一種中斷向量號,每一種中斷向量號都與一個中斷向量號都與一個中斷服務(wù)程序相對應(yīng)。中斷服務(wù)程序相對應(yīng)。中斷服務(wù)程序的入口中斷服務(wù)程序的入口地址存放在內(nèi)存儲器地址存放

24、在內(nèi)存儲器的中斷向量表內(nèi)。的中斷向量表內(nèi)。 中斷向量表是中斷向中斷向量表是中斷向量號與它相應(yīng)的中斷量號與它相應(yīng)的中斷服務(wù)程序的轉(zhuǎn)換表。服務(wù)程序的轉(zhuǎn)換表。9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù) 中斷向量表分為三部分:中斷向量表分為三部分:(1)專用中斷:)專用中斷:類型類型0類型類型4,共有,共有5種類型。種類型。專用中斷的中斷服務(wù)程序的入口地址由系統(tǒng)負(fù)專用中斷的中斷服務(wù)程序的入口地址由系統(tǒng)負(fù)責(zé)裝入,用戶不能隨意修改。責(zé)裝入,用戶不能隨意修改。(2)備用中斷:)備用中斷:類型類型5類型類型3FH,這是,這是Intel公公司為軟、硬件開發(fā)保留的中斷類型,一般不允司為軟

25、、硬件開發(fā)保留的中斷類型,一般不允許用戶改作其他用途。許用戶改作其他用途。 (3)用戶中斷:)用戶中斷:類型類型40H類型類型FFH,為用戶,為用戶可用中斷,其中斷服務(wù)程序的入口地址由用戶可用中斷,其中斷服務(wù)程序的入口地址由用戶程序負(fù)責(zé)裝入。程序負(fù)責(zé)裝入。 9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)中斷中斷中斷矢量號代碼中斷矢量號代碼 (0255) 中斷服務(wù)程序中斷服務(wù)程序 一一對應(yīng)一一對應(yīng)一一對應(yīng)一一對應(yīng)中斷矢量號中斷矢量號N中斷矢量表的地址中斷矢量表的地址中斷矢量表中斷矢量表中斷服務(wù)程序的入口中斷服務(wù)程序的入口 地址(地址(CS,IP) 49.4.1 8086/8

26、088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)例例: 鍵盤中斷的矢量號為鍵盤中斷的矢量號為09H,它的中斷服務(wù)程,它的中斷服務(wù)程序入口地址為序入口地址為0BA9H:0125H,求它在中斷矢量,求它在中斷矢量表中的地址及相應(yīng)單元內(nèi)容表中的地址及相應(yīng)單元內(nèi)容 解解:鍵盤中斷對應(yīng)的中斷矢量表位于:鍵盤中斷對應(yīng)的中斷矢量表位于0000:0024H (09H4=24H)開始的開始的4單元單元 這這4個單元的內(nèi)容見表個單元的內(nèi)容見表:9.4.1 8086/8088的中斷系統(tǒng)的中斷系統(tǒng)微機原理與接口技術(shù)(1)直接寫入法:)直接寫入法:例例 若中斷類型號若中斷類型號n=70H,中斷服務(wù)子程序的段名是,中斷服務(wù)子

27、程序的段名是INTSUB,借助偽指令和傳送指令,將中斷服務(wù)子程,借助偽指令和傳送指令,將中斷服務(wù)子程序入口地址寫入中斷向量表。序入口地址寫入中斷向量表。VECDATA SEGMENT AT 0 ORG 70H*4LOCA_70 DW 2 DUP(?)(?)VECDATA ENDS代碼段寫入中斷向量表代碼段寫入中斷向量表ININT SEGMENT MOV LOCA_70,OFFSET INTSUBMOV LOCA_70,SEG INTSUB中斷入口地址的寫入方法中斷入口地址的寫入方法微機原理與接口技術(shù)例例 不借助偽指令,直接用指令將中斷服務(wù)子程序不借助偽指令,直接用指令將中斷服務(wù)子程序INTSU

28、B的入口地址寫入中斷向量表中,中斷類型號的入口地址寫入中斷向量表中,中斷類型號仍然為仍然為70H XOR AX,AXMOV ES,AXMOV BX ,70H*4MOV AX,OFFSET INTSUBMOV ES:BX, AXMOV AX ,SEG INTSUBMOV ES BX+2, AX中斷入口地址的寫入方法中斷入口地址的寫入方法微機原理與接口技術(shù)(2)利用利用DOS功能調(diào)用寫、讀中斷向量表。功能調(diào)用寫、讀中斷向量表。DOS功能調(diào)用功能調(diào)用25H用來寫中斷向量表。入口參數(shù)用來寫中斷向量表。入口參數(shù)是是: AL:中斷類型號;DS:中斷服務(wù)程序入口的段地址;DX:中斷服務(wù)程序入口的偏移地址。D

29、OS功能調(diào)用功能調(diào)用35H用來讀中斷向量表,入口、出用來讀中斷向量表,入口、出口參數(shù)如下:口參數(shù)如下: AL:中斷類型號;ES:讀出的中斷服務(wù)程序入口的段地址;BX:讀出的中斷服務(wù)程序入口的偏移地址。中斷入口地址的寫入方法中斷入口地址的寫入方法微機原理與接口技術(shù)例例: :設(shè)中斷類型號為設(shè)中斷類型號為70H70H,中斷服務(wù)程序是,中斷服務(wù)程序是INTSUBINTSUB,用用DOSDOS功能調(diào)用功能調(diào)用25H25H將中斷服務(wù)程序入口地址寫將中斷服務(wù)程序入口地址寫入中斷向量表。入中斷向量表。解:相關(guān)的程序段如下:解:相關(guān)的程序段如下:PUSHPUSHDSDSMOVMOVAX, SEG INTSUBA

30、X, SEG INTSUBMOVMOVDS, AXDS, AXLEALEADX, INTSUBDX, INTSUBMOVMOVAL, 70HAL, 70HMOVMOVAH, 25HAH, 25HINTINT21H21HPOPPOPDSDS中斷入口地址的寫入方法中斷入口地址的寫入方法微機原理與接口技術(shù)9.4.2 8086/8088CPU的中斷處理過程的中斷處理過程有有無無當(dāng)前指令執(zhí)行完畢當(dāng)前指令執(zhí)行完畢有中斷請求否?有中斷請求否?關(guān)中斷關(guān)中斷保護(hù)現(xiàn)場和斷點保護(hù)現(xiàn)場和斷點開中斷開中斷中斷服務(wù)中斷服務(wù)關(guān)中斷關(guān)中斷恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場開中斷開中斷取下一條指令取下一條指令返回返回 CPU接收到外設(shè)的中斷請求

31、接收到外設(shè)的中斷請求信號時信號時 ,若為非屏蔽中斷請求,若為非屏蔽中斷請求,則則CPU執(zhí)行完現(xiàn)行指令后,就執(zhí)行完現(xiàn)行指令后,就立即響應(yīng)中斷。若為可屏蔽中立即響應(yīng)中斷。若為可屏蔽中斷請求,能否響應(yīng)中斷,還取斷請求,能否響應(yīng)中斷,還取決于決于CPU的中斷允許觸發(fā)器的的中斷允許觸發(fā)器的狀態(tài)。只有當(dāng)其為狀態(tài)。只有當(dāng)其為“1”(即允(即允許中斷時),許中斷時),CPU才能響應(yīng)可才能響應(yīng)可屏蔽中斷:若其為屏蔽中斷:若其為“0”(即禁(即禁止中斷時),即使有可屏蔽中止中斷時),即使有可屏蔽中斷請求,斷請求,CPU也不響應(yīng)。也不響應(yīng)。CPU要響應(yīng)可屏蔽中斷請求,要響應(yīng)可屏蔽中斷請求,必須滿足以下三個條件:必須

32、滿足以下三個條件: 無總線請求;無總線請求; CPU允許中允許中斷;斷; CPU執(zhí)行完現(xiàn)行指令。執(zhí)行完現(xiàn)行指令。微機原理與接口技術(shù)微機原理與接口技術(shù)中斷處理的主要過程中斷處理的主要過程(1)保護(hù)現(xiàn)場:)保護(hù)現(xiàn)場:為了不破壞主程序中使用的寄存器的內(nèi)容,必須用入棧指令PUSH將有關(guān)寄存器的內(nèi)容入棧保護(hù)。 (2)開中斷:)開中斷:為了實現(xiàn)中斷嵌套,需要安排一條開中斷指令,使系統(tǒng)處于開中斷狀態(tài)。(3)中斷服務(wù):)中斷服務(wù):CPU通過執(zhí)行中斷服務(wù)程序,完成對中斷情況的處理。 9.4.2 8086/8088CPU的中斷處理過程的中斷處理過程微機原理與接口技術(shù)中斷返回時,要進(jìn)行以下操作:(1)關(guān)中斷:)關(guān)中

33、斷:使現(xiàn)場的恢復(fù)工作不被打擾。(2)恢復(fù)現(xiàn)場:)恢復(fù)現(xiàn)場:在返回主程序之前要將用戶保護(hù)的寄存器內(nèi)容從堆棧中彈出,以便能正確執(zhí)行主程序?;謴?fù)現(xiàn)場用POP指令,要注意彈出時的順序與入棧的順序正好相反。(3)開中斷:)開中斷:使CPU能繼續(xù)接收中斷請求。 9.4.2 8086/8088CPU的中斷處理過程的中斷處理過程微機原理與接口技術(shù)9.4.3 可屏蔽中斷的全過程可屏蔽中斷的全過程微機原理與接口技術(shù)9.4.4 中斷響應(yīng)時序中斷響應(yīng)時序8086在響應(yīng)可屏蔽中斷時要進(jìn)入中斷響應(yīng)周期。中斷響應(yīng)周期需要兩個總線周期 ,共8個T狀態(tài)??善帘沃袛嗟慕涌陔娐罚谑盏降谝粋€應(yīng)答信號后,立即向CPU傳送相應(yīng)外設(shè)的

34、中斷類型號。微機原理與接口技術(shù)9.5 可編程中斷控制器可編程中斷控制器8259A12345678910111213142827262524232221201918171615WRRDCAS1D0D1D2GNDVCCCSA08259AD7D6D5D4D3CAS0CAS2SP/ENINTIR0IR1IR2IR3IR4IR5IR6IR7INTAD0WRRDCSA0INTAIRQ0INTSP/ENCAS0CAS1CAS28259A微機原理與接口技術(shù)微機原理與接口技術(shù)9.5 可編程中斷控制器可編程中斷控制器8259A微機原理與接口技術(shù)數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器:與:與DB掛接(低掛接(低8位),傳送控

35、制字位),傳送控制字狀態(tài)信息,中斷向量。有了緩沖器,可直接掛接在總狀態(tài)信息,中斷向量。有了緩沖器,可直接掛接在總線上,沒有緩沖器的設(shè)備,不能直接掛接在總線上線上,沒有緩沖器的設(shè)備,不能直接掛接在總線上讀讀/寫控制邏輯寫控制邏輯:接收:接收CPU 的讀的讀/寫控制命令和片選控寫控制命令和片選控制信息制信息 RD: 由由IN指令產(chǎn)生,實現(xiàn)讀指令產(chǎn)生,實現(xiàn)讀8259A(內(nèi)部寄存器)內(nèi)部寄存器) WR:由:由OUT指令產(chǎn)生,實現(xiàn)寫指令產(chǎn)生,實現(xiàn)寫8259A(命令字)命令字) A0:地址碼,選擇內(nèi)部控制寄存器:地址碼,選擇內(nèi)部控制寄存器 A0=0:選擇內(nèi)部偶地址:選擇內(nèi)部偶地址 A0=1:選擇內(nèi)部奇地址

36、:選擇內(nèi)部奇地址 CS:片選信號,凡是掛總線上的芯片都需分配一個:片選信號,凡是掛總線上的芯片都需分配一個來自來自于系統(tǒng)譯碼電路的選通信號于系統(tǒng)譯碼電路的選通信號9.5 可編程中斷控制器可編程中斷控制器8259A微機原理與接口技術(shù)級聯(lián)緩沖器級聯(lián)緩沖器/比較器比較器:用于多:用于多8259A系統(tǒng),也稱緩沖方式系統(tǒng),也稱緩沖方式SP/EN:雙功能信號,用于級聯(lián)控制:雙功能信號,用于級聯(lián)控制緩沖方式緩沖方式時,時,EN=0,表示允許,表示允許8259A通過緩沖存儲器輸出通過緩沖存儲器輸出 EN=1,表示,表示CPU寫寫8259A非緩沖方式非緩沖方式時,時,SP表示主從關(guān)系,表示主從關(guān)系,SP=1,表

37、示主片,表示主片,SP=0表表示從片示從片中斷請求觸發(fā)器(中斷請求觸發(fā)器(IRR): 8位寄存器,用來存放由外位寄存器,用來存放由外部輸入的中斷申請信號部輸入的中斷申請信號IR0IR7 。當(dāng)某一個。當(dāng)某一個IRi端呈現(xiàn)高端呈現(xiàn)高電平時,該寄存器的相應(yīng)位置電平時,該寄存器的相應(yīng)位置1,顯然,最多有,顯然,最多有8個中斷個中斷請求信號同時進(jìn)入請求信號同時進(jìn)入IR0IR7端,則端,則IRR將被置全將被置全“1”。至于被置至于被置“1”的請求能否進(jìn)入的請求能否進(jìn)入IRR的下一級判優(yōu)電路還的下一級判優(yōu)電路還取決于中斷屏蔽寄存器取決于中斷屏蔽寄存器IMR中相應(yīng)位的狀態(tài)中相應(yīng)位的狀態(tài) 9.5 可編程中斷控制

38、器可編程中斷控制器8259A微機原理與接口技術(shù)中斷服務(wù)寄存器中斷服務(wù)寄存器(ISR): 8位寄存器,用來存放或記錄位寄存器,用來存放或記錄正在服務(wù)中的所有中斷請求(如在多重嵌套時)。當(dāng)某正在服務(wù)中的所有中斷請求(如在多重嵌套時)。當(dāng)某一級中斷請求被響應(yīng),則一級中斷請求被響應(yīng),則ISR中相應(yīng)位被置中相應(yīng)位被置“1”,CPU執(zhí)行它的中斷服務(wù)程序期間,一直保持到該級中斷處理執(zhí)行它的中斷服務(wù)程序期間,一直保持到該級中斷處理過程結(jié)束為止。在多重中斷時,過程結(jié)束為止。在多重中斷時,ISR中可能有多位同時中可能有多位同時被置被置“1”,ISR可同時記錄多個中斷請求可同時記錄多個中斷請求 中斷屏蔽寄存器中斷屏

39、蔽寄存器(IMR): 8位寄存器,用來存放對各級中位寄存器,用來存放對各級中斷請求的屏蔽信息。由斷請求的屏蔽信息。由CPU設(shè)置,以決定某個中斷源是設(shè)置,以決定某個中斷源是否被屏蔽,當(dāng)該寄存器中某一位置否被屏蔽,當(dāng)該寄存器中某一位置“1”時,表示禁止該時,表示禁止該中斷請求進(jìn)入系統(tǒng)。通過中斷請求進(jìn)入系統(tǒng)。通過IMR寄存器可實現(xiàn)對各級中斷寄存器可實現(xiàn)對各級中斷的有選擇的屏蔽的有選擇的屏蔽9.5 可編程中斷控制器可編程中斷控制器8259A微機原理與接口技術(shù)中斷優(yōu)先級排隊電路中斷優(yōu)先級排隊電路(PR):用來判別已進(jìn)入用來判別已進(jìn)入IRR中的各中中的各中斷請求的優(yōu)先級別。當(dāng)有多個中斷請求同時產(chǎn)生并經(jīng)斷請

40、求的優(yōu)先級別。當(dāng)有多個中斷請求同時產(chǎn)生并經(jīng)IMR允許進(jìn)入系統(tǒng)后,先由允許進(jìn)入系統(tǒng)后,先由PR電路判定當(dāng)前哪一個中斷請求具電路判定當(dāng)前哪一個中斷請求具有最高優(yōu)先級,然后由系統(tǒng)首先響應(yīng)這一級中斷,并轉(zhuǎn)去有最高優(yōu)先級,然后由系統(tǒng)首先響應(yīng)這一級中斷,并轉(zhuǎn)去執(zhí)行相應(yīng)的中斷服務(wù)程序。當(dāng)出現(xiàn)多重中斷時,由執(zhí)行相應(yīng)的中斷服務(wù)程序。當(dāng)出現(xiàn)多重中斷時,由PR判定判定是否允許所出現(xiàn)的新的請求去打斷正在處理的中斷服務(wù)而是否允許所出現(xiàn)的新的請求去打斷正在處理的中斷服務(wù)而被優(yōu)先處理。一般的處理原則是被優(yōu)先處理。一般的處理原則是允許高級中斷打斷低中斷允許高級中斷打斷低中斷,反之不行反之不行 控制邏輯控制邏輯:依據(jù)中斷請求寄

41、存器依據(jù)中斷請求寄存器IRR的位置情況和的位置情況和優(yōu)先級排隊電路優(yōu)先級排隊電路PR的判定結(jié)果,向的判定結(jié)果,向8259A內(nèi)部其內(nèi)部其他部件發(fā)出控制信號,并向他部件發(fā)出控制信號,并向CPU發(fā)出中斷請求信發(fā)出中斷請求信號號INT和接收來自和接收來自CPU的中斷響應(yīng)信號的中斷響應(yīng)信號INTA,控,控制制8259A進(jìn)入中斷服務(wù)狀態(tài)進(jìn)入中斷服務(wù)狀態(tài)9.5 可編程中斷控制器可編程中斷控制器8259A微機原理與接口技術(shù)(1)8259A接收外部中斷,接收外部中斷,IRR有有8位,對位,對IR0IR7,IRR接接收來自某一引腳的中斷請求后,對應(yīng)位置收來自某一引腳的中斷請求后,對應(yīng)位置1,鎖存請求,鎖存請求(2

42、)邏輯電路根據(jù))邏輯電路根據(jù)IMR中的對應(yīng)位是否屏蔽決定是否讓其中的對應(yīng)位是否屏蔽決定是否讓其進(jìn)入優(yōu)先級排隊電路。進(jìn)入優(yōu)先級排隊電路。IMR中對應(yīng)位為中對應(yīng)位為0,則允許進(jìn)入,則允許進(jìn)入,若對應(yīng)位為若對應(yīng)位為1,則封鎖,則封鎖(3)中斷優(yōu)先級排隊電路把新進(jìn)入的中斷請求和當(dāng)前正在)中斷優(yōu)先級排隊電路把新進(jìn)入的中斷請求和當(dāng)前正在進(jìn)行的以及排隊等待的進(jìn)行重新排隊,決定最高優(yōu)先級進(jìn)行的以及排隊等待的進(jìn)行重新排隊,決定最高優(yōu)先級(4)ISR寄存器存放的是當(dāng)前進(jìn)行的中斷服務(wù)的標(biāo)志,如果寄存器存放的是當(dāng)前進(jìn)行的中斷服務(wù)的標(biāo)志,如果新來的優(yōu)先級足夠高,則新來的優(yōu)先級足夠高,則8259A會通過邏輯電路使輸出端會

43、通過邏輯電路使輸出端INT向向CPU發(fā)中斷請求。此時若發(fā)中斷請求。此時若IF=1,則,則CPU在執(zhí)行完當(dāng)在執(zhí)行完當(dāng)前指令后,就可以響應(yīng)中斷前指令后,就可以響應(yīng)中斷9.5 可編程中斷控制器可編程中斷控制器8259A8259A的工作過程的工作過程微機原理與接口技術(shù)對對8086CPU而言,響應(yīng)中斷申請后,向而言,響應(yīng)中斷申請后,向8259A回回送送兩個兩個負(fù)脈沖負(fù)脈沖INTA第一個第一個INTA到達(dá)時,到達(dá)時,8259A做做3件事:件事: IRR鎖存功能失效,不接受任何申請鎖存功能失效,不接受任何申請 使使ISR相應(yīng)位置位,提供判優(yōu)依據(jù)相應(yīng)位置位,提供判優(yōu)依據(jù) 使使IRR清零清零第二個第二個INTA

44、到達(dá)時,到達(dá)時,8259A做做3件事:件事: 恢復(fù)恢復(fù)IRR功能功能 將中斷類型號送上數(shù)據(jù)總線的將中斷類型號送上數(shù)據(jù)總線的D7D0,傳給,傳給CPU 如果方式控制字(如果方式控制字(ICW4),自動中斷結(jié)束位為,自動中斷結(jié)束位為1,那么在第二個脈沖結(jié)束時,那么在第二個脈沖結(jié)束時,8259A會將第一個會將第一個INTA脈脈沖到來時設(shè)置的沖到來時設(shè)置的ISR清清09.5 可編程中斷控制器可編程中斷控制器8259A微機原理與接口技術(shù)v每片包含兩個內(nèi)部端口地址,一個偶地址端口每片包含兩個內(nèi)部端口地址,一個偶地址端口(A0=0),一個奇地址端口,一個奇地址端口(A0=1),其它高位地址碼由其它高位地址碼

45、由用戶定義,用來做用戶定義,用來做8259A的片選信號(的片選信號(CS)v8259A中中ISR、IRR及及IMR的內(nèi)容可以通過的內(nèi)容可以通過寫寫控制命控制命令字來加以改變。有兩種類型的控制命令字:令字來加以改變。有兩種類型的控制命令字:v初始化命令字初始化命令字ICW:(:(ICW1ICW4),它們必須),它們必須在初始化時寫入。并且,一旦寫入,一般在系統(tǒng)運在初始化時寫入。并且,一旦寫入,一般在系統(tǒng)運行過程中就不再改變行過程中就不再改變v工作方式命令字或操作命令字工作方式命令字或操作命令字OCW:(:(OCW1OCW3)它們必須在初始化命令后方能寫入。它們)它們必須在初始化命令后方能寫入。它

46、們用來對中斷處理過程作動態(tài)控制。在一個系統(tǒng)運行用來對中斷處理過程作動態(tài)控制。在一個系統(tǒng)運行過程中,操作命令字可以被多次設(shè)置過程中,操作命令字可以被多次設(shè)置9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)初始化開始ICW1ICW2級聯(lián)方式?YICW3要ICW4?ICW4OCW1NNYOCW2初始化結(jié)束OCW3要OCW3?YNNY要OCW2?9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)(1)ICW1芯片初始化命令字芯片初始化命令字 標(biāo)記:標(biāo)記:A0=0,D4=1標(biāo)記標(biāo)記ICW1,因為,因為OCW2和和OCW3也要求也要求A0=0D7D6D5D4D3D2D1D

47、01LTIMADISNGLIC4習(xí)慣上填習(xí)慣上填01-中斷請求電平觸發(fā)中斷請求電平觸發(fā)0-中斷請求邊沿觸發(fā)中斷請求邊沿觸發(fā)8086系統(tǒng)不起作用系統(tǒng)不起作用1-單片,單片,0-級聯(lián)級聯(lián)1-設(shè)置設(shè)置ICW40-不設(shè)置不設(shè)置A009.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)(2)ICW2設(shè)置中斷類型碼初始化命令字,緊跟在設(shè)置中斷類型碼初始化命令字,緊跟在ICW1之后,定義之后,定義中斷類型碼的高中斷類型碼的高5位,低位,低3位由位由IRi確定確定 。 標(biāo)記:標(biāo)記:A0=1D7D6D5D4D3T7T6T5D2D1D0T4T3A10A9A8A01與用戶選擇類型碼有關(guān),與用戶選擇類型

48、碼有關(guān),選擇系統(tǒng)沒有占用的選擇系統(tǒng)沒有占用的0 0 0 IR00 0 1 IR10 1 0 IR20 1 1 IR31 0 0 IR41 0 1 IR51 1 0 IR61 1 1 IR7注注:中斷類型碼一定是連續(xù)的?。褐袛囝愋痛a一定是連續(xù)的!9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù) (3) ICW3初始化命令字:初始化命令字:功能:在多片功能:在多片8259A的系統(tǒng)中,說明主、從的系統(tǒng)中,說明主、從8259A之間的連接關(guān)系(僅在多片之間的連接關(guān)系(僅在多片8259A系統(tǒng)中使用)。系統(tǒng)中使用)。9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù) (4)

49、 ICW4初始化命令字:初始化命令字:功能:設(shè)置功能:設(shè)置8259A的中斷結(jié)束方式等。的中斷結(jié)束方式等。9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù) 8259A對于對于中斷優(yōu)先權(quán)中斷優(yōu)先權(quán)的管理有兩種方式、三種的管理有兩種方式、三種具體的做法。具體的做法。(1)全嵌套方式:即固定優(yōu)先級方式,對于)全嵌套方式:即固定優(yōu)先級方式,對于8個個中斷源,從中斷源,從IR0接入的中斷源優(yōu)先級最高,從接入的中斷源優(yōu)先級最高,從IR7接入的中斷源優(yōu)先級最低。接入的中斷源優(yōu)先級最低。(2)循環(huán)優(yōu)先級方式:初始時,仍然是按)循環(huán)優(yōu)先級方式:初始時,仍然是按IR0的的優(yōu)先級最高,優(yōu)先級最高,I

50、R7的優(yōu)先級最低,一旦某個中斷的優(yōu)先級最低,一旦某個中斷請求被響應(yīng)了,這個中斷輸入對應(yīng)的優(yōu)先級就降請求被響應(yīng)了,這個中斷輸入對應(yīng)的優(yōu)先級就降到最低,原來比這個輸入低一級的輸入的優(yōu)先級到最低,原來比這個輸入低一級的輸入的優(yōu)先級升位最高,其余各個輸入對應(yīng)的優(yōu)先級仍然依次升位最高,其余各個輸入對應(yīng)的優(yōu)先級仍然依次排列。排列。9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)(3)特殊全嵌套)特殊全嵌套方式:特殊全嵌方式:特殊全嵌套方式在多片套方式在多片8259A級聯(lián)的時級聯(lián)的時候使用。它允許候使用。它允許同級中斷的嵌套:同級中斷的嵌套:后面到來的同級后面到來的同級中斷申請可以打中斷申

51、請可以打斷前面沒有結(jié)束斷前面沒有結(jié)束的同級中斷服務(wù)。的同級中斷服務(wù)。 從從8259A發(fā)來的新的申請可發(fā)來的新的申請可以打斷前面的中斷服務(wù)以打斷前面的中斷服務(wù)9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)中斷結(jié)束方式中斷結(jié)束方式8259A8259A有兩種清除有兩種清除ISR(ISR(中斷服務(wù)寄存器)寄存器中中斷服務(wù)寄存器)寄存器中的登記的方法,也就是有兩種中斷結(jié)束方式。的登記的方法,也就是有兩種中斷結(jié)束方式。(1 1)自動結(jié)束中斷方式:)自動結(jié)束中斷方式:8259A8259A在在CPUCPU發(fā)送第二個發(fā)送第二個應(yīng)答信號的后沿,自動清除被響應(yīng)的中斷在應(yīng)答信號的后沿,自動清除被響

52、應(yīng)的中斷在ISRISR寄寄存器中的登記。存器中的登記。(2 2)非自動結(jié)束中斷方式:要求在中斷服務(wù)程序)非自動結(jié)束中斷方式:要求在中斷服務(wù)程序結(jié)束前,通過指令向結(jié)束前,通過指令向8259A8259A發(fā)送一個結(jié)束中斷的命發(fā)送一個結(jié)束中斷的命令,一般就稱為令,一般就稱為EOIEOI命令(命令(8259A8259A的一種操作命令的一種操作命令字),字),8259A8259A收到這個命令后,才會清除正在服務(wù)收到這個命令后,才會清除正在服務(wù)的中斷在的中斷在ISRISR寄存器中的登記。寄存器中的登記。9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)中斷屏蔽方式中斷屏蔽方式一般屏蔽方式:通

53、過對于中斷屏蔽寄存器一般屏蔽方式:通過對于中斷屏蔽寄存器IMR的設(shè)置,可以屏蔽一些(甚至全部)的設(shè)置,可以屏蔽一些(甚至全部)中斷申請輸入到中斷申請輸入到8259A。還可以實現(xiàn)高優(yōu)先。還可以實現(xiàn)高優(yōu)先級的中斷對低優(yōu)先級中斷的屏蔽。級的中斷對低優(yōu)先級中斷的屏蔽。特殊屏蔽方式:特殊屏蔽方式:8259A還可以設(shè)置一種特殊還可以設(shè)置一種特殊屏蔽方式。在這樣的屏蔽方式中,高優(yōu)先屏蔽方式。在這樣的屏蔽方式中,高優(yōu)先級的中斷不對低級中斷產(chǎn)生屏蔽。也就是級的中斷不對低級中斷產(chǎn)生屏蔽。也就是說,各中斷源之間的優(yōu)先級關(guān)系就不考慮說,各中斷源之間的優(yōu)先級關(guān)系就不考慮了。了。 9.5 .3 8259A的控制字格式的控

54、制字格式微機原理與接口技術(shù)當(dāng)當(dāng)8259A經(jīng)預(yù)置經(jīng)預(yù)置ICWi后,已進(jìn)入初始狀態(tài),便可接后,已進(jìn)入初始狀態(tài),便可接受來自受來自IRi端的中斷請求,然后自動進(jìn)入操作命令端的中斷請求,然后自動進(jìn)入操作命令字狀態(tài),準(zhǔn)備接受由字狀態(tài),準(zhǔn)備接受由CPU寫入寫入8259A的操作命令字的操作命令字OCWi8259A有有3個操作命令字,即個操作命令字,即OCW1OCW3,操作,操作命令字是在應(yīng)用程序中設(shè)置的命令字是在應(yīng)用程序中設(shè)置的對對OCWi的操作,次序上沒有嚴(yán)格的要求的操作,次序上沒有嚴(yán)格的要求對端口地址有嚴(yán)格的規(guī)定,即對端口地址有嚴(yán)格的規(guī)定,即OCW1必須寫入奇地必須寫入奇地址端口,址端口,OCW2和和O

55、CW3必須寫入偶地址端口必須寫入偶地址端口9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)(1)OCW1中斷屏蔽操作命令字,標(biāo)記:中斷屏蔽操作命令字,標(biāo)記:A0=1D7D6D5D4D3M7M6M5D2D1D0M4M3M2M1M0A01Mi=1,該中斷被屏蔽,該中斷被屏蔽Mi=0,該中斷被允許,該中斷被允許9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)(2)OCW2設(shè)置優(yōu)先級循環(huán)方式和中斷結(jié)束方式的操作命令字設(shè)置優(yōu)先級循環(huán)方式和中斷結(jié)束方式的操作命令字 標(biāo)記:標(biāo)記:A0=0,D3=D4=09.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)00

56、1-普通普通EOI方式方式011-特殊特殊EOI方式(方式(L20有效,指定結(jié)束的是哪一級中斷,有效,指定結(jié)束的是哪一級中斷,并清并清ISR)101-普通普通EOI循環(huán)方式循環(huán)方式111-特殊特殊EOI循環(huán)方式(循環(huán)方式(L20有效,清有效,清L20指指 定級別定級別ISR,并賦予其最低優(yōu)先級)并賦予其最低優(yōu)先級)000-自動自動EOI方式(復(fù)位,清除)方式(復(fù)位,清除)100-自動自動EOI方式(置位,設(shè)置)方式(置位,設(shè)置)110-置位優(yōu)先權(quán)命令,向置位優(yōu)先權(quán)命令,向8259A發(fā)置位優(yōu)先權(quán)命令,最低發(fā)置位優(yōu)先權(quán)命令,最低優(yōu)先級賦予優(yōu)先級賦予L20指定的指定的IRi,其它中斷源按循環(huán)方式分,

57、其它中斷源按循環(huán)方式分別賦給優(yōu)先級別賦給優(yōu)先級9.5 .3 8259A的控制字格式的控制字格式R SL EIO 編碼說明編碼說明微機原理與接口技術(shù)(3)OCW3標(biāo)記:標(biāo)記:A0=0,D3D4=01 OCW3不是不是必需的必需的D7D6D5D4D3/ CSMMSMMD2D1D001PRRRISA000X-無效無效10-特殊屏蔽方式復(fù)位特殊屏蔽方式復(fù)位11-特殊屏蔽方式置位特殊屏蔽方式置位1-查詢查詢8259A狀態(tài)狀態(tài)0-不查詢不查詢0X:無效:無效10:讀:讀IRR AL11:讀:讀ISR AL注:注: 讀讀IMR寄存器不需要設(shè)置寄存器不需要設(shè)置RR和和RIS只只需將端口設(shè)置成奇地址需將端口設(shè)置

58、成奇地址A0=1 用用IN指令,指令,IMR AL,與,與OCW3無關(guān),無關(guān),可在程序的任何位置安排可在程序的任何位置安排IN指令實現(xiàn)指令實現(xiàn)9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)8259A應(yīng)用舉例應(yīng)用舉例 例例8-5 2片片8259級聯(lián),從片的級聯(lián),從片的INT接主片的接主片的IR2。端口地址:主片端口地址:主片20H、21H,從片,從片A0H、A1H。主片和從片均采用邊沿觸發(fā)。主片和從片均采用邊沿觸發(fā)。主片采用特殊全嵌套方式,從片是一般全嵌套方式。主片采用特殊全嵌套方式,從片是一般全嵌套方式。采用非緩沖方式,主片接采用非緩沖方式,主片接+5V,從片接地。從片接地

59、。主片的中斷類型號為主片的中斷類型號為08H0FH,從片的中斷類型號為,從片的中斷類型號為70H77H。寫出主寫出主8259A和從和從8259A的初始化程序段。的初始化程序段。9.5 .3 8259A的控制字格式的控制字格式微機原理與接口技術(shù)相應(yīng)的初始化程序段如下:相應(yīng)的初始化程序段如下:ICW1A EQU 20H ;主片端口地址;主片端口地址ICW2A EQU ICW1A+1ICW3A EQU ICW2AICW4A EQU ICW2AICW1B EQU 0A0H ;從片端口地址;從片端口地址ICW2B EQU ICW1B+1ICW3B EQU ICW2BICW4B EQU ICW2B微機原理與接口技術(shù);- 主片主片8259A-MOV AL,11H ;ICW1,邊沿觸發(fā),多片,需,邊沿觸發(fā),多片,需ICW4OUT ICW1A,ALMOV AL,08H ;ICW2,中斷類型碼,中斷類型碼OUT ICW2A

溫馨提示

  • 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

提交評論