西南科技大學(xué)微機(jī)原理9-59_第1頁(yè)
西南科技大學(xué)微機(jī)原理9-59_第2頁(yè)
西南科技大學(xué)微機(jī)原理9-59_第3頁(yè)
西南科技大學(xué)微機(jī)原理9-59_第4頁(yè)
西南科技大學(xué)微機(jī)原理9-59_第5頁(yè)
已閱讀5頁(yè),還剩36頁(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)介

9.4可編程中斷控制器Intel8259A8259A的功能:中斷優(yōu)先權(quán)管理接受中斷請(qǐng)求提供中斷類型號(hào)具有屏蔽與開(kāi)放中斷的功能8259A特點(diǎn):具有對(duì)中斷服務(wù)程序入口地址的尋址能力單片8259可處理8級(jí)中斷級(jí)聯(lián)時(shí):最多可用9片處理64級(jí)中斷8259A的片內(nèi)尋址A0=1、0,用于選擇內(nèi)部不同寄存器9:8259A特點(diǎn)9.4.1

8259A的引腳

VCC

A0

INTA

IR7

IR6

IR5

IR4

IR3

IR2

IR1

IR0

INT

SP/EN

CAS2

CS

WR

RD

D7

D6

D5

D4

D3

D2

D1

D0

CAS0

CAS1

GND

1

28

2

27

3

26

4

25

5

24

6

23

7

22

8

21

9

20

10

19

11

18

12

17

13

16

1415雙列直插式芯片28個(gè)引腳端口地址的確定假設(shè):8259A的端口地址為:20H,21H,某8位CPU

和8259A的地址線如何連接?地址譯碼CPUD7~D0A7~A1D7~D0A0A0INTAINTRINTAINT8259IR0IR7CSA7A00010000020H0010000121H9.4.48259A的中斷順序有請(qǐng)求輸入時(shí),將IRR相應(yīng)位置位;若中斷允許,則由8259A的INT引腳向CPU送出請(qǐng)求信號(hào);若CPU處在開(kāi)中斷,則在當(dāng)前指令完成后,用INTA響應(yīng);8259A接到INTA信號(hào)后,使ISR位置位,IRR相應(yīng)位復(fù)位;CPU啟動(dòng)另一個(gè)響應(yīng)周期,輸出第二個(gè)INTA脈沖,8259A

向數(shù)據(jù)總線送出一個(gè)8位指針向量;同時(shí),CPU取出此向量乘以4,得到中斷服務(wù)程序的入口地址;中斷響應(yīng)周期完成,CPU執(zhí)行中斷服務(wù)程序,8259A工作在AEOI或EOI模式下。

9.4.58259A的編程分兩種:初始化編程和工作方式編程。初始化編程:由CPU向8259A送2~4個(gè)字節(jié)的初始化命令字,使其處于開(kāi)始點(diǎn)。工作方式編程:由CPU向8259A送3個(gè)字節(jié)的工作命令字,以規(guī)定8259A的工作方式。8259A的初始化命令字:ICWi(i=1~4)ICW1:芯片控制初始化命令字

ICW2:中斷類型碼設(shè)置

ICW3:用于級(jí)聯(lián),主片/從片的初始化命令字

ICW4:方式控制初始化命令字9.4:8259A的控制字和工作方式(1)ICW1(A0=0)——芯片控制初始化命令

ICW1必須寫(xiě)入偶地址端口中。

D7~D5:在系統(tǒng)中不用,為1為0都可以,是A7~A5。

D4

設(shè)置為1,指示ICW1的標(biāo)志。

D3(LTIM)=1,表示中斷請(qǐng)求為電平觸發(fā)方式,

=0,表示中斷請(qǐng)求為邊沿觸發(fā)方式。

D2(ADI):在8086/8088中不起作用。

D1(SNGL):指出8259A有否級(jí)聯(lián)。

=1,表示系統(tǒng)中有一片8259A,

=0,表示系統(tǒng)中有多片8259A。

D0(IC4):指出后面是否設(shè)置ICW4。使用ICW4時(shí)

D0必須為1。LTIMADISNGLIC41000D7D6D5D4D3D2D1D09.4:8259A的初始化命令字(2)ICW2(A0=1)——中斷類型碼的設(shè)置

ICW2寫(xiě)入8259A的奇地址端口。

例1:

8259A采用前沿觸發(fā),單片使用,需要ICW4,

假設(shè)IR0的類型碼為08H,試確定ICW1,ICW2。

已知8259A端口地址:20H,21HT3T4T6T5T7D7D6D5D4D3D2D1D09.4:8259A的初始化命令字解:ICW1=00010011BICW2=00001000B MOVAL,00010011B OUT20H,AL MOVAL,00001000B OUT21H,AL【問(wèn)】

8259A的ICW2設(shè)置了中斷類型碼的哪幾位?試說(shuō)明對(duì)8259A的ICW2分別設(shè)置為:30H、38H、36H時(shí)有什么差別?【答】8259A的ICW2設(shè)置了中斷類型碼的D7~D3位。

30H和36H對(duì)應(yīng)的高5位相同,均為:00110,表示中斷類型碼區(qū)別于低3位;而38H的高5位為:00111,與前面的兩者不可能同。9.4:8259A的初始化命令字(3)初始化命令字ICW3:級(jí)聯(lián)方式結(jié)構(gòu)需要分別對(duì)主片和從片進(jìn)行設(shè)置9.4:8259A的初始化命令字(3)ICW3(A0=1)——級(jí)連方式的設(shè)置

ICW3寫(xiě)入8295A的奇地址端口。

主片ICW3的格式:指出主8259哪個(gè)引腳連有從8259,對(duì)應(yīng)位置1。

從片ICW3的格式:指出從片8259連在主8259哪個(gè)引腳上,由D2D1D0指出。IR3IR2IR1IR0IR4IR6IR5IR7D7D6D5D4D3D2D1D0主片從片9.5:8259A的初始化命令字例2:現(xiàn)有一主片8259A的IR3和IR6接了2個(gè)從片。

主片端口地址:20H,21H;1#從片端口地:A0H,A1H

試設(shè)置ICW3。9.4:8259A的初始化命令字舉例主片:ICW3=01001000=48H從片1#:ICW3=00000011=03H從片2#:ICW3=00000110=06H

主片ICW3的初始化程序段:MOVAL,48HOUT21H,AL1#從片ICW3的初始化:MOVAL,03HOUT0A1H,AL解:(4)ICW4的格式(A0=1)

ICW4為方式控制初始化命令字,寫(xiě)入奇地址端口。SFNM:=0,一般全嵌套方式;=1,特殊全嵌套方式(SpecificFullNestedMode)BUF:=0,非緩沖方式;=1,緩沖方式(buffered)M/S:主片(Master)/從片(Slave)

若BUF=1,M/S=1,作主片,M/S=0,作從片

BUF=0,M/S無(wú)意義AEOI:=0,中斷非自動(dòng)結(jié)束;=1,中斷自動(dòng)結(jié)束(AutomaticEndOfInterrupt)uPM:=0,用于8位機(jī);=1,用于16位機(jī)9.4:8259A的初始化命令字8259A的工作命令字:OCWi

(i=1~3)

OCW1:中斷屏蔽命令字;

OCW2:優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式;

OCW3:查詢方式,特殊屏蔽方式,讀狀態(tài)等。9.4:8259A的操作命令字在對(duì)8259A進(jìn)行了初始化編程后,芯片已經(jīng)作好接收中斷請(qǐng)求的輸入準(zhǔn)備。在8259A工作期間若需要改變8259A的工作方式,可由CPU發(fā)送操作命令字OCW進(jìn)行控制。(1)OCW1的格式(A0=1)OCW1稱為屏蔽命令字,寫(xiě)入8259A的奇地址端口。當(dāng)OCW1某位=1,表示對(duì)應(yīng)的中斷請(qǐng)求被屏蔽。

9.4:8259A的操作命令字

用于設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式,寫(xiě)入偶地址單元。

D4D3:=00,特征位

D7(R):=1,優(yōu)先級(jí)循環(huán)方式;R=0,非循環(huán)方式。

D5(EOI):=1,在中斷服務(wù)完畢,發(fā)中斷結(jié)束命令,使當(dāng)前

ISR的對(duì)應(yīng)位ISn復(fù)位。

D5(EOI):=0,不發(fā)EOI。

D6(SL):=1,用L2、L1、L0指定中斷等級(jí)。

在ICW4中,若AEIO=1,自動(dòng)清除當(dāng)前ISn。

AEIO=0,ISn要用EOI清除。(2)OCW2的格式(A0=0)9.4:8259A的操作命令字9.5:8259A的操作命令字OCW2的R、SL、EOI格式D7D6D5優(yōu)先級(jí)排隊(duì)方式D7D6D5=000 自動(dòng)EOI方式,第二個(gè)INTA后沿自動(dòng)將ISR中相應(yīng)位清0D7D6D5=001 正常EOI方式,將ISR中優(yōu)先級(jí)最高的置1位清0D7D6D5=010 無(wú)效D7D6D5=011 特殊EOI方式,按D2~D0編碼級(jí)別將ISR中相應(yīng)位清0D7D6D5=100 自動(dòng)EOI循環(huán)方式,第二個(gè)INTA清ISR相應(yīng)位,并賦予最低 優(yōu)先級(jí),循環(huán)優(yōu)先級(jí)D7D6D5=101 正常EOI循環(huán)方式,將ISR中優(yōu)先級(jí)最高的置1位清0,并賦 予最低優(yōu)先級(jí),循環(huán)優(yōu)先級(jí)D7D6D5=110 優(yōu)先級(jí)置位,將最低優(yōu)先級(jí)賦予D2~D0編碼的中斷源D7D6D5=111 特定EOI循環(huán)方式,按D2~D0編碼級(jí)別清ISR,并賦予最低 優(yōu)先級(jí),循環(huán)優(yōu)先級(jí)9.5:8259A的操作命令字(3)OCW3的格式(A0=0)

用于提供查詢方式,特殊屏蔽方式,讀狀態(tài)等操作

D4D3=01,特征位1.查詢中斷:

P=1時(shí),表示查詢。例:IR4引腳上有中斷請(qǐng)求,CPU執(zhí)行一條輸入指令,從奇地址端口讀得以下查詢字:9.5:8259A的操作命令字2.讀狀態(tài)OCW3=00001010B,RR=1,RIS=0,讀IRR;OCW3=00001011B,RR=1,RIS=1,讀ISR。若要讀IMR,不須設(shè)OCW3的查詢命令。3.特殊屏蔽方式操作ESMM=1,SMM=1,置特殊屏蔽方式,8259A脫離當(dāng)前優(yōu)先級(jí)方式.ESMM=1,SMM=0,撤銷(xiāo)特殊屏蔽方式9.5:8259A的操作命令字4.8259A哪些寄存器的內(nèi)容可讀出?

設(shè)8259A地址20H,21H1)讀中斷屏蔽寄存器IMR內(nèi)容:中斷屏蔽字

INAL,21H;A0=12)要讀出ISR或IRR的內(nèi)容,A0=0必須設(shè)置OCW3中的D4D3D2=010:(1)讀IRR:設(shè)置OCW3:D1D0=10MOVAL,00001010BINAL,20H

(2)讀ISR:設(shè)置OCW3:D1D0=11MOVAL,00001011BINAL,20H9.5:8259A的操作命令字【問(wèn)】8529A僅占用兩個(gè)I/O地址,它是如何區(qū)別4條ICW命令和3條OCW命令的?在地址引腳A0=1時(shí)讀出的是什么?【答】A0=0寫(xiě)ICW1、OCW2、OCW3,以其特征位區(qū)分(D4D3分別是0,00,01)。A0=1寫(xiě)ICW2、ICW3、ICW4、OCW1,寫(xiě)ICW1后順序?qū)懙氖荌CW2、ICW3、ICW4。A0=0讀IRR、ISR、查詢字,由OCW3的RR和RIS兩位區(qū)分IRR和ISR,通過(guò)OCW3的P位向8259發(fā)查詢命令后讀出的是查詢字。A0=1時(shí),讀IMR。編寫(xiě)程序,將8259的IRR、ISR和IMR寄存器的內(nèi)容送到內(nèi)存0050H開(kāi)始的單元中。MOVAL,0AHOUT20H,ALINAL,20HMOV[0050H],ALMOVAL,0BHOUT20H,ALINAL,20HMOV[0051H],ALINAL,21HMOV[0052H],AL分析:要讀IRR,則OCW3的D1D0=10;要讀ISR,則OCW3的D1D0=11;IRR和ISR在偶地址中,IMR在奇地址中。

8.4.68259A的工作方式1.中斷觸發(fā)方式(此方式由ICW1來(lái)設(shè)置)(1)邊沿觸發(fā)方式:

(2)電平觸發(fā)方式:

當(dāng)中斷輸入端持續(xù)出現(xiàn)2個(gè)脈沖的高電平,表示有1個(gè)中斷請(qǐng)求,當(dāng)該請(qǐng)求得到響應(yīng)后,輸入端必須及時(shí)撤除高電平。(3)中斷查詢方式:CPU用軟件查詢2.設(shè)置優(yōu)先級(jí)的方式(P469)9.5:8259A中斷觸發(fā)方式3.中斷屏蔽方式(1)普通屏蔽方式

用OCW1命令將中斷屏蔽寄存器IMR的相應(yīng)位置“1”。(2)特殊屏蔽方式用于中斷處理程序中。當(dāng)要允許優(yōu)先級(jí)低的中斷進(jìn)入,可采用特殊屏蔽方式.

可用OCW3的D6D5=11設(shè)置,此時(shí)除IMR中置1位對(duì)應(yīng)的中斷被屏蔽外,其它置0位對(duì)應(yīng)的中斷無(wú)論優(yōu)先級(jí)高低都可得到響應(yīng)。9.5:中斷屏蔽方式4.優(yōu)先級(jí)的管理方式:一般完全嵌套方式特殊完全嵌套方式優(yōu)先級(jí)自動(dòng)循環(huán)方式優(yōu)先級(jí)特殊循環(huán)方式9.5:優(yōu)先級(jí)的管理方式(1)完全嵌套方式:

在對(duì)8259進(jìn)行初始化后,沒(méi)有設(shè)置其它優(yōu)先級(jí)方式,則自動(dòng)按此方式工作.

特點(diǎn):在全嵌套方式中,中斷請(qǐng)求按優(yōu)先級(jí)IR0~IR7進(jìn)行處理,IR0級(jí)中斷的優(yōu)先級(jí)最高。

當(dāng)一個(gè)中斷被響應(yīng)時(shí),中斷類型碼被放到數(shù)據(jù)總線上,ISR中的對(duì)應(yīng)位ISn被置1,然后進(jìn)入中斷服務(wù)程序。一般情況下(除了中斷自動(dòng)結(jié)束方式外),在CPU發(fā)出中斷結(jié)束命令(EOI)前,此對(duì)應(yīng)位一直保持“1”。(2)特殊全嵌套方式用途:多片級(jí)聯(lián)方式,特殊全嵌套方式僅設(shè)置在主片中.

特點(diǎn):

和全嵌套方式基本相同,不同的是:在處理以及中斷時(shí),可響應(yīng)同級(jí)中斷,從而實(shí)現(xiàn)對(duì)同級(jí)中斷請(qǐng)求的特殊嵌套.(3)優(yōu)先級(jí)自動(dòng)循環(huán)方式:

用途:多個(gè)中斷源優(yōu)先級(jí)相等的場(chǎng)合。

特點(diǎn):優(yōu)先級(jí)是在變化的,一個(gè)設(shè)備中斷處理完后,它的優(yōu)先級(jí)自動(dòng)降為最低。

由8259A的操作命令字OCW2決定。

(4)優(yōu)先級(jí)指定方式

用戶根據(jù)要求用置優(yōu)先級(jí)命令指定最低優(yōu)先級(jí),例如設(shè)置IRi為最低優(yōu)先級(jí),則最高優(yōu)先級(jí)為IRi+1,其它各級(jí)按循環(huán)方式類推。9.5:優(yōu)先級(jí)的管理方式9.5:優(yōu)先級(jí)的管理方式5.結(jié)束中斷處理的方式(EOI)中斷自動(dòng)結(jié)束方式一般的中斷結(jié)束方式特殊的中斷結(jié)束方式(1)中斷自動(dòng)結(jié)束方式:用于系統(tǒng)中只有一片8259A,多個(gè)中斷不會(huì)嵌套的情形。系統(tǒng)一進(jìn)入中斷處理,就將當(dāng)前中斷服務(wù)寄存器ISR的對(duì)應(yīng)位清除。對(duì)8259A來(lái)說(shuō),好像已經(jīng)結(jié)束了當(dāng)前中斷。

在命令字ICW4中將AEOI(D1)位置“1”。(2)普通的中斷結(jié)束方式(非自動(dòng)EOI):

用在全嵌套的情形。

CPU用OUT指令往8259A偶地址發(fā)一個(gè)EOI命令,8259A將使ISR最高非零ISR位清0。結(jié)束當(dāng)前正在處理的中斷。用操作命令字OCW2中的R=0,SL=0,EOI=1的設(shè)置來(lái)實(shí)現(xiàn)。在命令字OCW2=0010000B=20H9.5:結(jié)束中斷處理的方式(3)特殊的中斷結(jié)束方式(非自動(dòng)EOI)在非全嵌套方式下,通過(guò)向8259A發(fā)一條特殊中斷結(jié)束命令來(lái)判斷要清除ISR中置1位中的哪一位。用操作命令字OCW2中的R=0,SL=1,EOI=1的設(shè)置來(lái)實(shí)現(xiàn),此時(shí)OCW2中的L2、L1、L0這3位指出了到底要清除ISR中的哪一位。

OCW2=01100L2L1L0

往偶地址端口輸出OCW2命令。

OCW2中:EOI=1、SL=1、R=0是特殊中斷結(jié)束命令。9.5:結(jié)束中斷處理的方式6.中斷級(jí)聯(lián)方式

(1).緩沖方式:

8259A通過(guò)總線驅(qū)動(dòng)器和數(shù)據(jù)總線相連,這就是緩沖方式。(2).非緩沖方式:

當(dāng)系統(tǒng)中只有單片8259A時(shí),一般將它直接與數(shù)據(jù)總線相連。8259A緩沖方式下級(jí)連結(jié)構(gòu)8259A非緩沖方式下級(jí)連結(jié)構(gòu)

地址總線

控制總線

數(shù)據(jù)總線

CSA0DBINTA

INT

CAS0

8259A從控ACAS1

CAS2

SP/ENIRQ7┅

IRQ0

CSA0DBINTAINT

CAS0

CAS18259A主控

CAS2

IRQ7┅

IRQ0

SP/EN76

5432

10

CSA0DB

INTA

INT

CAS0

8259A從控BCAS1

CAS2

SP/ENIRQ7┅

IRQ0

GND76543210

GND76543210

VCC76543210

CSA0DB

INTA

INT

CAS0

8259A從控BCAS1

CAS2

SP/ENIRQ7┅

IRQ0

CSA0DB

INTA

INT

CAS0

8259A從控BCAS1

CAS2

SP/ENIRQ7┅

IRQ0

CSA0DB

INTA

INT

CAS0

8259A從控BCAS1

CAS2

SP/ENIRQ7┅

IRQ0

CSA0DB

INTA

INT

CAS0

8259A從控BCAS1

CAS2

SP/ENIRQ7┅

IRQ0

369.5:8259A的級(jí)聯(lián)使用1#從片掛在主片的IR6,2#從片掛在主片的IR39.58259A的級(jí)聯(lián)應(yīng)用?主片:IR3有申請(qǐng)

IRR:00001000ISR:00001000主片向CPU發(fā)INTR信號(hào)CPU發(fā)回答信號(hào)INTA2個(gè)從片都收到INTA主片向從片送識(shí)別碼:CAS0~CAS2=011在2#從片:若IR5有申請(qǐng)

IRR:00010000ISR:00010000向主片發(fā)INT信號(hào)從片地址與主片地址同2#從片與識(shí)別碼一致2#從片送出中斷類型碼9.5:8259A的級(jí)聯(lián)使用9.68259A在微機(jī)系統(tǒng)中的使用圖8-128259A的初始化流程8.6.18259編程命令1.初始化命令字

ICW1~ICW42.操作命令字

OCW1~OCW3送ICW1,是否用ICW4用

溫馨提示

  • 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)論