微機(jī)原理-第9章-中斷與DMA技術(shù)_第1頁(yè)
微機(jī)原理-第9章-中斷與DMA技術(shù)_第2頁(yè)
微機(jī)原理-第9章-中斷與DMA技術(shù)_第3頁(yè)
微機(jī)原理-第9章-中斷與DMA技術(shù)_第4頁(yè)
微機(jī)原理-第9章-中斷與DMA技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩54頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

課程教學(xué)單元第1章

微型計(jì)算機(jī)基礎(chǔ)知識(shí)第2章

80X86/Pentium微處理器內(nèi)部結(jié)構(gòu)第3章指令系統(tǒng)第4章匯編語(yǔ)言程序設(shè)計(jì)第5章8086/8088CPU的總線操作與時(shí)序第6章微型計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第7章半導(dǎo)體存儲(chǔ)器第8章輸入輸出接口技術(shù)第9章中斷與DMA技術(shù)

第10章定時(shí)與計(jì)數(shù)技術(shù)第11章并行接口與串行接口第12章人機(jī)交互接口第13章模擬量輸入輸出接口第9章中斷與DMA技術(shù)§9.1概念及處理過(guò)程1、中斷概念2、中斷源3、中斷處理過(guò)程(1)中斷請(qǐng)求(2)中斷判優(yōu)(3)中斷響應(yīng)(4)中斷服務(wù)①②③④⑤(5)中斷返回§9.2

8086中斷系統(tǒng)1、中斷源與中斷類型號(hào)2、中斷向量表3、中斷響應(yīng)過(guò)程4、中斷時(shí)序§9.3中斷控制器Intel8259A1、性能2、結(jié)構(gòu)和工作原理3、外部引腳和工作過(guò)程4、工作方式(1)中斷優(yōu)先權(quán)管理方式①②③④(2)中斷源屏蔽方式①②(3)結(jié)束中斷方式①②③④(4)與系統(tǒng)總線的連接方式①②(5)引入中斷請(qǐng)求的方式①②③5、8259A的編程(1)端口地址(2)初始化編程ICW1-ICW4(3)操作編程O(píng)CW1-OCW36、級(jí)聯(lián)§9.1中斷的概念及處理過(guò)程

1、中斷概念

2、中斷源

3、中斷處理過(guò)程(1)中斷請(qǐng)求(2)中斷判優(yōu)(3)中斷響應(yīng)(4)中斷服務(wù)①②③④⑤(5)中斷返回

計(jì)算機(jī)在執(zhí)行正常程序的過(guò)程中,當(dāng)出現(xiàn)某些緊急情況,異常事件或其它請(qǐng)求時(shí),處理器會(huì)暫時(shí)中斷正在運(yùn)行的程序,轉(zhuǎn)而去執(zhí)行對(duì)緊急情況或其它請(qǐng)求的操作處理。處理完成以后,CPU回到被中斷程序的斷點(diǎn)處接著往下繼續(xù)執(zhí)行,這個(gè)過(guò)程稱為中斷。1、中斷概念——引起中斷的原因或設(shè)備稱為中斷源2、中斷源中斷源可以被禁止(CLI)、被屏蔽(MASK)、可以嵌套硬件中斷(外部中斷):即通過(guò)外部的硬件產(chǎn)生的中斷

不可屏蔽中斷:每個(gè)系統(tǒng)中僅允許有一個(gè),都是用來(lái)處理緊急情況的,由NMI引腳引入,不受IF標(biāo)志的影響,一旦發(fā)生,系統(tǒng)會(huì)立即響應(yīng);

可屏蔽中斷:由INTR引腳引入,IF=1時(shí)可屏蔽中斷才能進(jìn)入,反之則不允許進(jìn)入。可屏蔽中斷可有多個(gè),一般是通過(guò)優(yōu)先級(jí)排隊(duì),從多個(gè)中斷源中選出一個(gè)進(jìn)行處理。(2)軟件中斷(內(nèi)部中斷):即根據(jù)某條指令或者對(duì)標(biāo)志寄存器中某個(gè)標(biāo)志的設(shè)置而產(chǎn)生,它與硬件電路無(wú)關(guān),常見(jiàn)的如除數(shù)為0,或用INTn指令產(chǎn)生3、中斷處理過(guò)程(以外部中斷為例)(1)中斷請(qǐng)求請(qǐng)求中斷的條件:①外設(shè)準(zhǔn)備好數(shù)據(jù)②系統(tǒng)允許外設(shè)發(fā)出中斷請(qǐng)求信號(hào)工作特點(diǎn):

Ⅰ.中斷請(qǐng)求信號(hào)應(yīng)保持到中斷被處理為止

Ⅱ.CPU識(shí)別中斷源有兩個(gè)方法:

軟件查詢、中斷矢量法

Ⅲ.CPU響應(yīng)中斷后,中斷請(qǐng)求信號(hào)應(yīng)及時(shí)撤銷(2)中斷判優(yōu)

——多設(shè)備同時(shí)中斷請(qǐng)求,CPU首先為誰(shuí)服務(wù)?中斷優(yōu)先級(jí)控制要處理兩種情況:

對(duì)同時(shí)產(chǎn)生的中斷:首先處理優(yōu)先級(jí)別較高的中斷;若優(yōu)先級(jí)別相同,則按先來(lái)先服務(wù)的原則處理;

非同時(shí)產(chǎn)生的中斷:低優(yōu)先級(jí)別的中斷處理程序允許被高優(yōu)先級(jí)別的中斷源所中斷,即允許中斷嵌套。中斷優(yōu)先級(jí)的控制可有三種方法

軟件查詢法——順序查詢中斷請(qǐng)求,先查詢的級(jí)別高

硬件鏈?zhǔn)脚袃?yōu)——優(yōu)先權(quán)排隊(duì)電路

專用硬件判優(yōu)——可編程中斷控制器(PIC)芯片軟件查詢法硬件鏈?zhǔn)脚袃?yōu)專用硬件PIC判優(yōu)(3)中斷響應(yīng)響應(yīng)中斷的時(shí)間:

每條指令最后一個(gè)時(shí)鐘周期,CPU檢測(cè)INTR或NMI信號(hào)響應(yīng)中斷的條件:

當(dāng)前指令執(zhí)行完(帶LOCK、REP前綴要求完整地執(zhí)行)當(dāng)前沒(méi)有復(fù)位(RESET)和保持(HOLD)信號(hào)對(duì)INTR,CPU應(yīng)處于開(kāi)中斷狀態(tài),即IF=1,且無(wú)NMI響應(yīng)中斷的動(dòng)作:

向中斷源發(fā)出中斷響應(yīng)信號(hào)斷點(diǎn)保護(hù),包括CS、IP和FR獲得中斷服務(wù)程序入口地址(軟件獲取法、中斷向量法)(4)中斷處理

——進(jìn)入中斷服務(wù)程序

由一系列的PUSH指令完成,保護(hù)那些與主程序中有沖突的寄存器。

由STI實(shí)現(xiàn),為了能中斷的嵌套。

與保護(hù)現(xiàn)場(chǎng)對(duì)應(yīng),注意恢復(fù)次序。

使用中斷返回指令I(lǐng)RET,不能用子程序返回指令RET?;謴?fù)斷點(diǎn)地址外和標(biāo)志寄存器的值。(5)中斷返回

提供具體的數(shù)據(jù)傳輸和處理?!?.28086中斷系統(tǒng)

1、中斷源與中斷類型號(hào)

2、中斷向量表

3、中斷響應(yīng)流程

1、8086/8088的中斷源與中斷類型號(hào)中斷源外部中斷內(nèi)部中斷外部可屏蔽中斷INTR不可屏蔽中斷NMI內(nèi)部硬件中斷內(nèi)部軟件中斷INTn除法出錯(cuò)單步跟蹤斷點(diǎn)中斷溢出中斷優(yōu)先級(jí)從高到低順序如下:除法出錯(cuò)、INTn、INT0→NMI→INTR→單步中斷PC機(jī)中軟件中斷源與硬件中斷源的關(guān)系

每個(gè)中斷源分配一個(gè)中斷類型碼,范圍0~255,8086/8088總可處理256種中斷源?!绯?INT4)、斷點(diǎn)(INT3)、除法溢出(INT0)、單步(INT1)、非屏蔽中斷的類型碼(INTn)為固定值——軟件中斷的類型碼由指令給出(n)——可屏蔽中斷的類型碼由PIC(可編程中斷控制器)給出中斷類型號(hào):CPU獲得中斷號(hào)的方法:表地址:00000H~003FFH256個(gè)入口,4B/入口Bytes低字為IP,高字為CS中斷n的入口地址在4n:4n+3

2、8086/8088的中斷向量表——存放256個(gè)中斷的中斷服務(wù)程序的入口地址的表00H~07H系統(tǒng)專用

08H~0FH硬件中斷10H~1FHBIOS用20H~3FHDOS用40H~FFH用戶用

3、中斷響應(yīng)流程圖例:設(shè)某中斷源類型碼為4AH,畫(huà)出求中斷服務(wù)處理程序示意圖解:中斷向量表指針為4*n=4*4AH=128H,即:0000:0128H

查中斷向量表,中斷服務(wù)程序入口地址是0F000H:1806H中斷向量表物理地址單元內(nèi)容INT4AH地址單元內(nèi)容

IP=1806H

CS=F000HF000:180600000H類型0中斷處理程序入口地址MOVAL,300:124類型49H中斷向量00001H0:1250:126

向量地址:4AH*4=128H0:12700004H類型1中斷處理程序入口地址0:12806H0:12918H0:12A00H0:12BF0H00008H…………………………………………0:12C類型4BH中斷向量0:12D0:12E0:12F中斷處理服務(wù)程序IRET003FFH類型FFH中斷處理程序入口地址§9.3中斷控制器Intel8259A1、特點(diǎn)2、內(nèi)部結(jié)構(gòu)和工作原理3、外部引腳和工作過(guò)程4、工作方式(1)中斷優(yōu)先權(quán)管理方式①②③④(2)中斷源屏蔽方式①②(3)結(jié)束中斷方式①②③(4)與系統(tǒng)總線的連接方式①②(5)引入中斷請(qǐng)求的方式①②③5、8259A的編程(1)端口地址(2)初始化編程ICW1-ICW4(3)操作編程O(píng)CW1-OCW36、級(jí)聯(lián)可用于8080/8085和8086/8088系統(tǒng)具有8級(jí)中斷優(yōu)先控制,通過(guò)級(jí)聯(lián)可以擴(kuò)展至64級(jí)優(yōu)先權(quán)控制,每一級(jí)中斷都可以設(shè)置為允許或屏蔽狀態(tài)。在中斷響應(yīng)周期內(nèi)提供中斷類型號(hào)可以編程設(shè)置工作多種方式,使用非常靈活采用NMOS制造工藝,只需單一的+5V電源1、中斷控制器Intel8259A的特點(diǎn)優(yōu)先權(quán)比較器

(PR)

中斷服務(wù)寄存器(ISR)

中斷請(qǐng)求寄存器(IRR)中斷屏蔽寄存器(IMR)控制邏輯INTINTAD7~D0A0RDWRCSCAS0CAS1CAS2SP/ENIR0IR1IR2IR3IR4IR5IR6IR7內(nèi)部總線讀/寫(xiě)邏輯數(shù)據(jù)總線緩沖器級(jí)聯(lián)緩沖器/比較器2、中斷控制器Intel8259A內(nèi)部結(jié)構(gòu)和工作原理(1).中斷請(qǐng)求寄存器IRR8位鎖存器,保存從IR0~I(xiàn)R7來(lái)的中斷請(qǐng)求信號(hào)某位=1表示對(duì)應(yīng)的IRi有中斷請(qǐng)求

(2).中斷服務(wù)寄存器ISR

8位寄存器,保存所有正在服務(wù)的中斷源某位=1表示對(duì)應(yīng)的IRi中斷正在被服務(wù)多重中斷時(shí)有多位被置1

(3).中斷屏蔽寄存器IMR8位寄存器,存放中斷屏蔽字某位=1表示對(duì)應(yīng)的IRi輸入被屏蔽

(4).中斷優(yōu)先權(quán)比較器

識(shí)別、管理各中斷請(qǐng)求的優(yōu)先級(jí)別確定是否向CPU發(fā)出中斷請(qǐng)求中斷響應(yīng)時(shí)確定ISR的置位及數(shù)據(jù)總線上類型碼(PR)(ISR)(IRR)(IMR)控制邏輯讀/寫(xiě)邏輯數(shù)據(jù)緩沖緩沖比較(5).讀/寫(xiě)控制電路●控制對(duì)8259A的讀、寫(xiě)操作●控制信號(hào)共同控制(6).數(shù)據(jù)總線緩沖器

●雙向8位3態(tài)緩沖器,8259A與CPU之間的數(shù)據(jù)接口●接收控制字、發(fā)送狀態(tài)信息和中斷號(hào)(7).級(jí)聯(lián)緩沖/比較器●級(jí)聯(lián)時(shí)存放主從設(shè)備的ID,可組成64級(jí)中斷優(yōu)先級(jí)●主從片8259A的CAS0~CAS2并接在一起傳輸ID●SP/EN區(qū)分主從身份(8).控制邏輯:●含ICW1-ICW4和OCW1-OCW3共7個(gè)寄存器●對(duì)CPU發(fā)INT、接收CPU命令,控制內(nèi)部部件(PR)(ISR)(IRR)(IMR)控制邏輯讀/寫(xiě)邏輯數(shù)據(jù)緩沖緩沖比較3、中斷控制器Intel8259A外部引腳和工作過(guò)程12345678910111213142827262524232221201918171615VccA0INTAIR7IR6IR5IR4IR3IR2IR1IR0INTSP/ENCAS2CSWRRDD7D6D5D4D3D2D1D0CAS0CAS1Vss8259A(1)8259A引腳1.D7-D0

雙向數(shù)據(jù)輸入/輸出2.IR7-IR0

8級(jí)中斷請(qǐng)求信號(hào)輸入規(guī)定優(yōu)先級(jí):IR0>…>IR7

多片級(jí)連時(shí)從片INT連主片IRi3.INT

中斷請(qǐng)求信號(hào)輸出4.INTA

中斷響應(yīng)應(yīng)答信號(hào)輸入5.RD

讀控制信號(hào)輸入6.WR

寫(xiě)控制信號(hào)輸出7.CS

片選信號(hào)輸入8.A0

內(nèi)部寄存器選擇信號(hào)輸入

A0=0ICW1、OCW2、OCW3A0=1ICW2~I(xiàn)CW4、OCW19.CAS2-CAS0

級(jí)聯(lián)信號(hào)引腳

10.SP/EN

級(jí)聯(lián)管理信號(hào)輸入,外部數(shù)據(jù)總線緩沖器啟動(dòng)信號(hào)

(2)8259A工作過(guò)程當(dāng)有一條或若干條中斷請(qǐng)求輸入(IR7-IR0)有效時(shí),則使中斷請(qǐng)求寄存器的IRR的相應(yīng)位置位8259A分析:該請(qǐng)求IMR不屏蔽、高于正在服務(wù)的中斷程序級(jí)別,則向CPU發(fā)出INT信號(hào)若CPU處于開(kāi)中斷狀態(tài),則在當(dāng)前指令執(zhí)行完之后,響應(yīng)INTR中斷,并且從INTA發(fā)應(yīng)答信號(hào)(兩個(gè)連續(xù)負(fù)脈沖)第一個(gè)INTA負(fù)脈沖到達(dá)時(shí),使ISR中允許中斷的最高優(yōu)先級(jí)位置1,;IRR寄存器的相應(yīng)位復(fù)位第二個(gè)INTA負(fù)脈沖到達(dá)時(shí),將ICW2中內(nèi)容送到數(shù)據(jù)總線的D7-D0上,CPU以此作為相應(yīng)中斷的類型碼。若ICW4中的中斷結(jié)束位為1(AEOI),則第二個(gè)INTA負(fù)脈沖結(jié)束時(shí),8259A將ISR寄存器的相應(yīng)位清零。否則由中斷服務(wù)程序在執(zhí)行完畢時(shí)輸出EOI命令使ISR復(fù)位。CAS0~CAS2D0~D7SP/ENIR0~I(xiàn)R7CPU響應(yīng)周期8259A工作波形INT第一個(gè)周期T1T2T3T4ALECLK

第二個(gè)周期T1T2T3T4第1個(gè)INTA前保持高電平

INTALOCK4、中斷控制器Intel8259A的工作方式(1)中斷優(yōu)先權(quán)管理方式可以編程設(shè)置或改變

4種①.全嵌套方式

8259A默認(rèn)的優(yōu)先權(quán)設(shè)置方式。

8259A所管理的8級(jí)中斷優(yōu)先權(quán)是固定不變的,其中IR0優(yōu)先級(jí)最高,IR7的優(yōu)先級(jí)最低。

CPU響應(yīng)中斷后,ISR中最高優(yōu)先級(jí)的中斷源相應(yīng)位置位,其中斷矢量送至系統(tǒng)數(shù)據(jù)總線,此時(shí)同級(jí)或低級(jí)的中斷請(qǐng)求被屏蔽,只允許高級(jí)中斷請(qǐng)求出現(xiàn)中斷嵌套。②.特殊全嵌套方式

與全嵌套不同點(diǎn):允許同級(jí)中斷請(qǐng)求可同級(jí)嵌套。用在級(jí)連系統(tǒng)中主8259A,CPU既允許高級(jí)別中斷輸入,也能夠響應(yīng)來(lái)自同一從片的較高優(yōu)先級(jí)別(但對(duì)于主片來(lái)講,優(yōu)先級(jí)別是相同的)的中斷圖:一般全嵌套方式與特殊全嵌套方式的區(qū)別:

D.主8259AIR0IR1IR2IR3IR4IR5IR6IR7一般嵌套方式:從片的INT被主片封鎖,故更高級(jí)別的IR0-IR2中斷也無(wú)法得到響應(yīng)特殊嵌套方式:因主片不封鎖從片的INT,故級(jí)別高的IR0-IR2中斷可以得到響應(yīng)。(但I(xiàn)R3-IR7仍被本從片封鎖)C.假定IR3發(fā)生中斷,并獲得服務(wù)一般嵌套方式:IR4的中斷被服務(wù)時(shí),這些中斷將被封鎖。B.特殊嵌套方式:IR4的中斷被服務(wù)時(shí),只封鎖IR5-IR7。A.INTE.從8259AINTIR0IR1IR2IR3IR4IR5IR6IR7去CPU③.自動(dòng)循環(huán)方式

一個(gè)中斷源的中斷請(qǐng)求被響應(yīng)之后,其優(yōu)先級(jí)自動(dòng)降為最低,8級(jí)中斷優(yōu)先級(jí)可以動(dòng)態(tài)改變。④.特殊循環(huán)方式

與自動(dòng)循環(huán)方式相比,初始化的優(yōu)先級(jí)是由程序控制的,而不是默認(rèn)的IR0—IR7。IR7IR6IR5IR4IR3IR2IR1IR07654321021076543最低級(jí)最高級(jí)最高級(jí)最低級(jí)ISR內(nèi)容IR7IR6IR5IR4IR3IR2IR1IR0IR4的服務(wù)結(jié)束以前0101000001000000IR4的服務(wù)結(jié)束以后ISRi(2)中斷源屏蔽方式2種①.普通屏蔽方式

8259A的每個(gè)中斷請(qǐng)求都受到IMR中相應(yīng)位的控制。若相應(yīng)位為“1”,則被屏蔽,中斷請(qǐng)求不能送CPU。通過(guò)對(duì)IMR的編程(操作命令字OCW1)來(lái)設(shè)置和改變。②.特殊屏蔽方式

中斷服務(wù)程序運(yùn)行時(shí),能動(dòng)態(tài)地改變中斷優(yōu)先級(jí)結(jié)構(gòu),即在中斷處理的一部分,禁止低級(jí)中斷,而在中斷處理的另一部分,又能夠允許低級(jí)中斷。特殊屏蔽是在中斷處理程序中使用。用OCW1對(duì)IMR中的某一位復(fù)位。對(duì)外界來(lái)講,只有正在處理的等級(jí)的同級(jí)中斷被屏蔽,而其它任何級(jí)別的中斷請(qǐng)求都開(kāi)放允許。(3)結(jié)束中斷方式——復(fù)位ISR中相應(yīng)位的方法3種①.中斷自動(dòng)結(jié)束方式

適用單片8259A,不用于級(jí)聯(lián)方式。

CPU系統(tǒng)響應(yīng)中斷在發(fā)第二個(gè)INTA脈沖時(shí),就會(huì)使中斷響應(yīng)寄存器ISR中相應(yīng)位復(fù)位。雖然系統(tǒng)在進(jìn)行中斷處理,但對(duì)8259A來(lái)講,ISR沒(méi)有相應(yīng)的指示,就象已經(jīng)中斷處理結(jié)束返回主程序一樣。CPU可以再次響應(yīng)任何級(jí)別的中斷請(qǐng)求。②.一般的中斷結(jié)束方式適用全嵌套優(yōu)先權(quán)管理模式。當(dāng)CPU用OUT向8259A發(fā)一般中斷中斷結(jié)束命令OCW2時(shí),8259A才會(huì)使ISR中優(yōu)先級(jí)別最高的位復(fù)位中斷服務(wù)程序┇向從PIC發(fā)EOI命令讀從PIC的ISR全0?向主PIC發(fā)EOI命令YIRET恢復(fù)現(xiàn)場(chǎng)N

在特殊全嵌套優(yōu)先權(quán)管理模式下,系統(tǒng)無(wú)法確定哪一級(jí)中斷為最后處理的中斷,適宜采用特殊的中斷結(jié)束方式。

CPU結(jié)束中斷處理之后,向8259A發(fā)送一個(gè)特殊的EOI中斷結(jié)束命令,這個(gè)特殊的中斷結(jié)束EOI命令,明確指出了中斷響應(yīng)寄存器ISR中需要復(fù)位的位。級(jí)聯(lián)非自動(dòng)結(jié)束中斷方式的中斷處理程序結(jié)束時(shí),都必須發(fā)兩個(gè)中斷結(jié)束EOI命令,一個(gè)發(fā)往從片,一個(gè)發(fā)往主片。③.特殊的中斷結(jié)束方式(4)與系統(tǒng)總線的連接方式

2種

8259A通過(guò)外部總線驅(qū)動(dòng)器8286和DB相連在多片8259A級(jí)連的大系統(tǒng)中,起EN功能

8259A的SP/EN輸出信號(hào)作為總線驅(qū)動(dòng)器的啟動(dòng)信號(hào),決定收發(fā)數(shù)據(jù)的傳送方向①.緩沖方式②.非緩沖方式

將8259A的數(shù)據(jù)總線直接與系統(tǒng)數(shù)據(jù)總線相連當(dāng)系統(tǒng)中只有少數(shù)幾片8259A時(shí),起SP功能

SP/EN作為主從標(biāo)志,主片SP/EN=1,而從片應(yīng)接SP/EN=0。(5)引入中斷請(qǐng)求的方式3種①.邊沿觸發(fā)方式

8259A將中斷請(qǐng)求輸入端(IRi或INT)出現(xiàn)的上升沿作為中斷請(qǐng)求信號(hào),之后保持高電平。②.電平觸發(fā)方式

8259A將中斷請(qǐng)求輸入端(IRi或INT)出現(xiàn)的高電平作為中斷請(qǐng)求信號(hào)。此方式下中斷響應(yīng)之后,高電平必須及時(shí)撤除,否則在CPU響應(yīng)中斷過(guò)程中,開(kāi)中斷之后,會(huì)引起第二次不應(yīng)該有的中斷。中斷源超過(guò)64個(gè),8259A在查詢方式工作:

a.中斷源仍往8259A發(fā)中斷請(qǐng)求,但8259A卻不使用INT信號(hào)向CPU發(fā)中斷請(qǐng)求信號(hào)。

b.CPU內(nèi)部的中斷允許標(biāo)志復(fù)位(IF=0),所以CPU對(duì)INT引腳上出現(xiàn)的中斷請(qǐng)求呈禁止?fàn)顟B(tài)。CPU用軟件查詢的方法來(lái)確定中斷源,從而實(shí)現(xiàn)服務(wù)。從外設(shè)的角度來(lái)看是靠中斷的方式來(lái)請(qǐng)求服務(wù),但從CPU的角度來(lái)看是用查詢方式來(lái)確定發(fā)中斷請(qǐng)求的中斷源。

查詢是通過(guò)CPU向8259A發(fā)查詢命令字OCW3(D2=1)來(lái)實(shí)現(xiàn):D7D6D5D4D3D2D1D0X00011008259A接到OCW3后,立即組成狀態(tài)字,等待CPU來(lái)讀取:

D7D6D5D4D3D2D1D0

IXXXXW2W1W0I=1,有請(qǐng)求,W2W1W0為本片請(qǐng)求中最高優(yōu)先級(jí)中斷源編碼③.中斷查詢方式4個(gè)初始化命令寄存器

ICW1、ICW2ICW3、ICW43個(gè)操作命令寄存器

OCW1(IMR)

OCW2、OCW3當(dāng)前中斷服務(wù)寄存器ISR中斷申請(qǐng)寄存器

IRR內(nèi)部9個(gè)可讀寫(xiě)的寄存器:

I3I4ICW1

芯片控制

ICW2

中斷類型號(hào)

ICW3

主從片關(guān)系

ICW4

方式控制處理部分控制部分00000000

ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級(jí)裁決器IRR中斷申請(qǐng)寄存器00000000

中斷屏蔽寄存器IMROCW2優(yōu)先級(jí)設(shè)置10010100

00

01

OCW3特殊屏蔽設(shè)置OCW18259A中斷控制器①8259A的編程結(jié)構(gòu)5、Intel8259A的編程(1)8259A端口地址SP/ENCA0CA1CA2IORIOW總線D0~D7數(shù)據(jù)線D0~D7INTAINTRA0片選譯碼A5~A9CSA0RD

INTAWRINT

I3I4ICW1

芯片控制

ICW2

中斷類型號(hào)

ICW3

主從片連接關(guān)系

ICW4

方式控制0111A010010100OCW1

中斷屏蔽寄存器IMR

00

OCW2

優(yōu)先級(jí)設(shè)置、發(fā)EOI

01

OCW3特殊屏蔽,查詢方式設(shè)置處理部分控制部分00000000

ISR當(dāng)前中斷服務(wù)寄存器PR優(yōu)先級(jí)裁決器VCCGND100A0IR0IR1IR2IR3IR4IR5IR6IR7IRR中斷申請(qǐng)寄存器00000000

②8259A與總線的信號(hào)連接③內(nèi)部寄存器的訪問(wèn)方法表讀出IRR、ISR讀出IMRxx01100xx1x10100寫(xiě)OCW2寫(xiě)OCW3寫(xiě)ICW1寫(xiě)(順序?qū)懭?ICW2,ICW3,ICW4,OCW1000010讀寫(xiě)操作D3D4A0WRRDCS向8259A寫(xiě)入ICW1~I(xiàn)CW4的過(guò)程稱為初始化編程向8259A寫(xiě)入OCW1~OCW3

的過(guò)程稱為操作方式編程寫(xiě)ICW1寫(xiě)ICW2級(jí)連?寫(xiě)ICW3需ICW4?寫(xiě)ICW4NNYY(2)8259A初始化編程初始化流程圖①I(mǎi)CW1——初始化開(kāi)始清除ISR和IMR(全0)將中斷優(yōu)先級(jí)設(shè)成默認(rèn)狀態(tài):

IR0最高,IR7最低設(shè)定為一般屏蔽方式采用非自動(dòng)中斷結(jié)束方式狀態(tài)讀出邏輯預(yù)置為讀IRR寫(xiě)入ICW1后,8259A的狀態(tài)如下:A0D7D6D5D4D3D2D1D00×

××1LTIM×SNGLIC4A0=0D4=1:ICW1的標(biāo)志D7D6D5:8080/8085系統(tǒng)中斷入口地址位A7A6A5D3:LTIM,IR觸發(fā)方式設(shè)定=1高電平觸發(fā),=0上升沿觸發(fā)D2:ADI,8080/8085調(diào)用地址間隔1/0表示間隔4/8D1:SNGL,級(jí)連控制=1單片,=0級(jí)連D0:IC4,ICW4控制

=1要寫(xiě)ICW4,=0不寫(xiě)ICW4(默認(rèn)ICW4全0)A0D7D6D5D4D3D2D1D01T7

T6T5T4T3×××②ICW2——中斷向量碼A0=1:對(duì)ICW2編程D7~D3:T7~T3,中斷向量碼的高5位D2~D0:T2~T0,最低3位為中斷源的序號(hào)IRn000~111分別對(duì)應(yīng)IR0~I(xiàn)R7

由8259A根據(jù)中斷源的序號(hào)自動(dòng)填入

若ICW2命令字為48H[01001000],則IR0的中斷向量碼為48H[01001000]IR7的中斷向量碼為4FH[01001111]……例題A0D7D6D5D4D3D2D1D01S7

S6S5S4S3S2S1S0③ICW3——級(jí)聯(lián)控制字Si=1:該位連接有從片,否則該位直接連接中斷源。主片A0D7D6D5D4D3D2D1D01×××××ID2ID1ID0從片ID2~I(xiàn)D0:標(biāo)識(shí)碼,說(shuō)明本從片連接到主片的哪個(gè)IR引腳上。000~111分別對(duì)應(yīng)IR0~I(xiàn)R7。ICW3必須與主、從片的連接關(guān)系一致:

如:主片ICW3=01000000,則從片ICW3=00000100中斷響應(yīng)時(shí),主片CAS2-CAS0送出被允許中斷的從片標(biāo)識(shí)碼,各從片用自己的ICW3與之比較,二者一致的從片才可發(fā)送中斷向量碼。注意A0D7D6D5D4D3D2D1D010

00SFNMBUFM/SAEOIμPM④ICW4——中斷結(jié)束方式字μPM:CPU類型選擇,1(8086/8088),0(8080/8085)AEOI:自動(dòng)EOI,1(自動(dòng)EOI方式),0(非自動(dòng)EOI方式)SFNM:特殊全嵌套,1(特殊全嵌套方式)0(一般全嵌套方式)

M/S:主/從緩沖選擇,與BUF配合決定主、從片

BUF:緩沖方式,1(緩沖方式),0(非緩沖方式)

BUFM/S含義

11緩沖方式/主PIC10緩沖方式/從PIC0x非緩沖方式,M/S無(wú)定義(3)8259A操作方式編程O(píng)CW1-3用于系統(tǒng)運(yùn)行中設(shè)置8259工作狀態(tài),寫(xiě)入順序可任意A0D7D6D5D4D3D2D1D01M7

M6M5M4M3M2M1M0①OCW1——中斷屏蔽字OCW1將寫(xiě)入IMR寄存器Mi=1中斷請(qǐng)求線IRi被屏蔽(不允許中斷)

=0允許該IRi中斷A0=1時(shí),讀OCW1,則可讀出設(shè)置的IMR內(nèi)容A0D7D6D5D4D3D2D1D00R

SLEOI00L2L1L0②OCW2——中斷結(jié)束和優(yōu)先級(jí)循環(huán)A0=0D4=0D3=0:OCW2的標(biāo)志R:優(yōu)先級(jí)循環(huán)控制位,1(循環(huán)優(yōu)先權(quán))0(固定優(yōu)先權(quán))SL:L2-L0指定優(yōu)先級(jí)有效標(biāo)志位,1(有效)0(無(wú)效)EOI:非自動(dòng)中斷結(jié)束命令位,1(EOI復(fù)位)0(此位無(wú)效)L2~L0:優(yōu)先級(jí)編碼,000-111對(duì)應(yīng)IR0-IR7RSLEOI功能001常規(guī)EOI,將ISR最高優(yōu)先權(quán)復(fù)位中斷結(jié)束011指定SEOI,L2-L0指定位復(fù)位101EOI,優(yōu)先級(jí)自動(dòng)循環(huán)自動(dòng)循環(huán)100EOI,設(shè)置優(yōu)先級(jí)自動(dòng)循環(huán)000EOI,固定優(yōu)先級(jí)(取消自動(dòng)循環(huán))111SEOI,優(yōu)先級(jí)按L2-L0編碼循環(huán)指定循環(huán)110設(shè)置優(yōu)先級(jí)按L2-L0編碼循環(huán)OCW2命令編碼A0D7D6D5D4D3D2D1D00×

ESMMSMM01PRRRIS③OCW3——屏蔽方式和讀出控制字A0=0D4=0D3=1,是OCW3標(biāo)志ESMM:SMM使能標(biāo)志,1(允許)0(禁止)SMM:特殊屏蔽方式,1(置位)0(取消)ESMMSMM11特殊屏蔽方式置位

10特殊屏蔽方式復(fù)位

0x非特殊屏蔽方式P(Polling):查詢命令位

=1CPU查詢方式

=0

非查詢方式RR:讀寄存器,1(讀)0(不讀)RIS:ISR/IRR選擇,1(ISR)0(IRR)RRRIS11讀ISR10讀IRR0x無(wú)效A0D7D6D5D4D3D2D1D00×

ESMMSMM01PRRRIS6、中斷控制器Intel8259A的級(jí)聯(lián)

級(jí)聯(lián):以1片8259A的INT引腳與CPU的INTR引腳相連,稱為主片;再將最多8片8259A的INT引腳,分別與主8259A的IR0-IR7相連,稱為從片。在主-從式8259級(jí)聯(lián)的微機(jī)系統(tǒng)中,系統(tǒng)能夠管理的中斷源可由8級(jí)擴(kuò)展至64級(jí)。定義8259A級(jí)聯(lián)連接圖8259A級(jí)聯(lián)主片中斷響應(yīng)圖8259A級(jí)聯(lián)從片中斷響應(yīng)圖返回CAS0IR0CAS1IR1CAS2IR2IR3INTAIR4IR5INT

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論