




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
微機原理及接口技術
第八章微型計算機中斷系統(tǒng)
CPU執(zhí)行程序時,由于發(fā)生了某種隨機的事件(外部或內部),引起CPU暫時中斷正在運行的程序,轉去執(zhí)行一段特殊的服務程序(稱為中斷服務程序或中斷處理程序),以處理該事件,該事件處理完后又返回被中斷的程序繼續(xù)執(zhí)行,這一過程稱為中斷。一、中斷的概念8.1概述8.1概述中斷技術是微機中一項重要技術。它不僅在數(shù)據(jù)輸入、輸出中提高了CPU的效率,而且在多外設、實時控制、故障處理中也是一項必不可少的技術。中斷處理的過程:INTR=1i+1條指令中斷服務程序i條指令CPU響應中斷外設中斷源申請中斷INTA=0②實時處理??刂葡到y(tǒng)往往有許多數(shù)據(jù)需要采集或輸出。實時控制中有的數(shù)據(jù)難以估計何時需要交換。中斷可為實時控制提供支持。③故障處理。計算機系統(tǒng)的故障往往隨機發(fā)生,如電源斷電、運算溢出、存儲器出錯等。采用中斷技術,系統(tǒng)故障一旦出現(xiàn),就能及時處理。中斷的應用特點①CPU與外設并行工作。解決CPU速度快、外設速度慢的矛盾。在外設需要時發(fā)出中斷申請,CPU才中斷原有工作執(zhí)行中斷服務程序,與外設交換數(shù)據(jù);中斷服務結束,CPU返回原程序繼續(xù)執(zhí)行。8.1概述一、中斷的概念1.中斷源引起CPU中斷的事件——中斷源。例如:外設——請求輸入輸出數(shù)據(jù),報告故障等事件——掉電、硬件故障、軟件錯誤、非法操作、定時時間到等中斷源分類:內部中斷:CPU內部執(zhí)行程序時自身產(chǎn)生的中斷外部中斷:CPU以外的設備、部件產(chǎn)生的中斷8.1概述2.中斷響應對于內部中斷和非屏蔽中斷來說CPU應立即響應。對于可屏蔽中斷來說CPU在每條指令的最后一個T檢測INTR引腳,當有中斷請求并開中斷(IF=1)的情況下向外設發(fā)出中斷響應信號INTA#。當CPU響應中斷后首先要保護斷點,然后轉去執(zhí)行中斷服務程序,中斷服務程序執(zhí)行結束返回斷點繼續(xù)執(zhí)行被中斷的程序。一、中斷的概念(續(xù))8.1概述一、中斷的概念(續(xù))8.1概述3.中斷向量表(中斷矢量表)中斷向量表即中斷服務程序入口地址表。中斷向量表中存放著中斷服務程序的入口地址。CPU響應中斷后根據(jù)中斷類型號在中斷向量表中查到對應的中斷服務程序的入口地址,然后轉到中斷服務程序。一、中斷的概念(續(xù))8.1概述4.中斷優(yōu)先級
當多個中斷源同時發(fā)生中斷請求時CPU先響應優(yōu)先級高的中斷。當CPU正在運行中斷服務程序時又有高優(yōu)先級的中斷請求進入,CPU會暫時掛起正在運行的中斷服務程序去執(zhí)行高級的中斷服務程序。實現(xiàn)中斷嵌套。一、中斷的概念(續(xù))8.1概述5.中斷屏蔽
對于可屏蔽中斷,CPU可以由軟件設置,使之不能被響應,稱為中斷屏蔽。8086/8088中斷源類型
NMIINTR中斷邏輯軟件中斷指令溢出中斷除法錯單步中斷非屏蔽中斷請求中斷控制器8259APIC8086/8088CPU內部邏輯斷點中斷可屏蔽中斷請求n43012二、中斷分類
8.1概述
8086/8088共有256個中斷源,分內部中斷和外部中斷兩大類:二、中斷分類
(續(xù))8.1概述
由外部硬件產(chǎn)生的中斷。分為非屏蔽中斷和可屏蔽中斷兩種:1.外部中斷:非屏蔽中斷:從NMI引腳引入,上升沿有效,不受IF(中斷允許)位限制,中斷向量碼為2。可屏蔽中斷:從INTR引腳引入,高電平有效,當IF=1時允許中斷,中斷向量碼由中斷控制器(如8259)提供。軟中斷指令產(chǎn)生的中斷;如:INT12HINT21H
2.內部中斷(軟中斷):有三種情況能引起內部中斷:二、中斷分類
(續(xù))8.1概述軟中斷指令產(chǎn)生的中斷;
CPU進行運算時發(fā)生錯誤產(chǎn)生的中斷;單步和斷點中斷,用于程序調試。
CPU進行運算時發(fā)生錯誤產(chǎn)生的中斷;
2.內部中斷(軟中斷):二、中斷分類
(續(xù))8.1概述除法錯中斷:中斷類型號為0,當商超出計算機所能表示的范圍時產(chǎn)生。溢出中斷:中斷類型號為4,專用指令INTO當運算使溢出標志OF=1時產(chǎn)生。例如:ADDAX,VALUEINTO若OF=0INTO不起作用,否則產(chǎn)生中斷
2.內部中斷(軟中斷):二、中斷分類
(續(xù))8.1概述單步和斷點中斷,用于程序調試。單步中斷:用于程序調試。當TF位置1后,每執(zhí)行一條指令CPU即自動產(chǎn)生中斷類型號為1的中斷。斷點中斷:用于程序調試。中斷類型號為3。當用debug調試程序時,可以在程序中插入斷點,在斷點處插入一條斷點指令INT3
8.2中斷處理過程1.中斷請求:對中斷請求信號的規(guī)定:信號要滿足CPU的要求;應被有效的記錄;信號的應及時撤消。對于可屏蔽中斷中斷的處理過程分以下幾步:2.中斷響應:指令執(zhí)行結束;開中斷;沒有復位、保持和非屏蔽中斷;如果正在執(zhí)行STI(開中斷)IRET(中斷返回)指令,CPU要再執(zhí)行一條指令后才響應。對于非屏蔽中斷CPU會立即響應對于可屏蔽中斷要滿足一定條件:8.2中斷處理過程3.保護現(xiàn)場:軟件查詢法;中斷矢量法。4.轉入執(zhí)行中斷服務程序:
中斷源識別:
中斷服務:5.恢復現(xiàn)場:6.中斷返回:8.2中斷處理過程一、CPU對中斷的響應關中斷斷點保護轉中斷服務CPU自動執(zhí)行中斷響應保護現(xiàn)場開中斷中斷服務恢復現(xiàn)場返回主程序CPU執(zhí)行中斷服務程序執(zhí)行一條指令指令結束INTR=1取下一條指令CPU執(zhí)行主程序NN
1、CPU發(fā)INTA同時,自動關中斷
2、CPU自動將斷點CS,IP,PSW入棧
3、CPU將中斷源提供的中斷類型碼形成中斷服務入口地址,送CS,IP執(zhí)行PUSH指令用于中斷嵌套。若無中斷嵌套,可放在恢復現(xiàn)場前執(zhí)行POP指令原PSW,IP,CS出棧,返回主程序IF=1INTR=18.2中斷處理過程8.2中斷處理過程對于不可屏蔽中斷和IF無關,也不用判斷中斷源,直接轉到中斷2,在中斷處理過程過程中仍能響應不可屏蔽中斷。對于軟件中斷由程序設定,能被不可屏蔽中斷和可屏蔽中斷所中斷。中斷請求非屏蔽中斷內部中斷可屏蔽中斷第2個INTA周期讀中斷向量碼第1個INTA周期FLAGS→((SP)-1)((SP)-2)(CS)→((SP)-3)((SP)-4)(IP)→((SP)-5)((SP)-6)(SP)-6→SP0→IF0→TF(4n)
(4n+1)→(IP)(4n+2)
(4n+3)→CS中斷處理中斷響應過程:INTA:中斷響應輸出信號(兩個負脈沖),用于讀中斷向量碼8086/8088
中斷過程
二、8086/8088的中斷響應過程完成當前指令內部中斷NMIINTRTF=1執(zhí)行下一條指令IF=1響應中斷讀類型碼標志入棧調服務程序CS、IP入棧清除IF、TF令TEMP=TF又有NMITEMP=1執(zhí)行服務程序CS、IP出棧標志出棧繼續(xù)執(zhí)行被中斷的程序YNNNNYYYYNNYYNIF=1讀類型碼N形成中斷類型碼二、中斷向量表8.2中斷處理過程對于可屏蔽中斷,當CPU響應中斷后要判斷是哪個中斷源發(fā)出的中斷請求(中斷源識別),可以采用軟件查詢法和中斷矢量法。軟件查詢法的具有簡單優(yōu)點是簡單,但浪費時間,當源較多時有些設備可能長時間得不到服務。中斷矢量法是將中斷服務程序的入口地址(矢量地址)放到一個轉移地址表中,根據(jù)中斷類型號可以在表中查到對應的中斷服務程序的入口地址。存放各類中斷的服務程序入口地址(段和偏移)表的地址位于內存的00000H~003FFH,大小為1KB,共256個入口每個服務程序入口占用4Bytes,低字為段內偏移,高字為段基址根據(jù)中斷類型號獲得中斷服務程序入口的方法:(n為中斷類型號)中斷向量在IVT中的存放地址=4×n8086/8088中斷向量表(IVT)二、中斷向量表8.2中斷處理過程CS
n=0,存放除法中斷程序入口地址...000H004H008H3FCH3FFHIPCSCSIP
n=1,存放單步中斷程序入口地址n=255
中斷n的服務程序入口地址存放在4n
開始連續(xù)的4個單元中(4×0)(4×0+1)2個單元
(4×0+2)(4×0+3)
兩個單元二、中斷向量表8.2中斷處理過程例:某中斷的中斷類型號為68H,其中斷過程為:(1)計算存放中斷服務程序入口地址的地址=68H*4=1A0H;(2)
取中斷入口地址的段內偏移量裝入IP,IP=2050H
,段碼裝入CS,CS=A000H;(3)轉向中斷服務程序;(4)中斷返回502000A0001A0H001A2H001A4H存放地址=68H*4=1A0H2050A000STIPUSHDSIRET中斷服務程序A000:2050INT68HMOVAX,0①②③④⑤2.中斷入口地址的設置
IBMPC對256個中斷類型已進行了地址分配,其中40H以后的中斷類型號可供用戶使用。供用戶使用的中斷類型號,可由用戶定義為軟中斷,由INTn指令引用;可通過INTR端或通過中斷控制器8259A引入可屏蔽的硬件中斷。使用時用戶要自己將中斷服務程序入口地址置入相應的中斷向量表內。方法1:通過指令來設置程序1:MOVAX,0;中斷入口表
MOVES,AX;段地址送ESMOVDI,n*4;偏移量送DIMOVAX,OFFSETINTRADCLD;DF=0遞增STOSW;傳送子程序偏移地址MOVAX,CSSTOSW;傳送子程序段地址STI;開中斷MOVAX,0;中斷入口表
MOVES,AX;段地址送ESMOVBX,n*4;偏移量送DIMOVAX,OFFSETINTRADMOVES:[BX],AXMOVAX,SEGINTRADMOVES:[BX+2],AXSTI程序2:方法2:通過調用DOS功能來設置設置中斷入口:把由AL指定中斷類型號的中斷入口DS:DX中放置在中斷入口表中。預置:AL=中斷類型號
DS:DX=中斷服務程序入口地址
AH=25H執(zhí)行:INT21H取中斷入口:把由AL指定中斷類型號的中斷入口,從中斷入口表中取到ES:BX中。預置:AL=中斷類型號
AH=35H執(zhí)行:INT21H返回:ES:BX=中斷服務程序入口地址MOVAL,n;取中斷入口MOVAH,35HINT21HPUSHES;存原中斷入口PUSHBXPUSHDSMOVAX,SEGINTRADMOVDS,AXMOVDX,OFFSETINTRADMOVAL,n;中斷類型號MOVAH,25H;設置中斷入口INT21HPOPDSPOPDX;恢復原中斷入口POPDSMOVAL,nMOVAH,25HINT21HRET二、中斷向量表8.2中斷處理過程3.中斷類型號的獲取
對于內部中斷和從NMI引入的非屏蔽中斷,類型號固定。對于從INTR引入的可屏蔽中斷,類型號有兩種方法:并行輸入接口;8259中斷控制器中斷主程序的編寫主程序中的初始化:設置中斷向量表設置中斷屏蔽位設置中斷允許標志。硬件(外設接口)和CPU自動完成:外設向CPU發(fā)INTR當前指令結束,CPU發(fā)INTA#CPU讀中斷類型號CPU保存斷點關中斷、禁止單步中斷取中斷服務程序入口地址轉到中斷服務程序中斷服務子程序的編寫中斷服務子程序:保護現(xiàn)場若允許中斷嵌套要開中斷執(zhí)行中斷處理程序關中斷,禁止其它中斷進入發(fā)EOI命令,結束中斷恢復現(xiàn)場用IRET指令返回主程序8.3中斷控制器8259A1、8級優(yōu)先權控制,通過級連可擴展到64級優(yōu)先級控制;2、每一級可由程序單獨屏蔽或允許;3、在CPU響應周期,可提供相應的中斷類型碼。中斷類型碼由8259編程設定;4、通過編程可設定多種工作方式。一、功能數(shù)據(jù)總線緩沖器讀/寫控制電路級聯(lián)緩沖器/比較器D0~D7RD#WR#A0CS#中斷請求寄存器(IRR)CA0CA1CA2SP#/EN#判優(yōu)電路PR內部服務寄存器(ISR)中斷請求寄存器(IMR)控制電路IR0...IR7INTA#INT8259內部結構圖二、中斷控制器8259A內部結構
8.3中斷控制器8259A1、數(shù)據(jù)總線緩沖器與CPU的DB連接,傳送控制字、狀態(tài)字和中斷類型碼等。2、讀寫邏輯通過IORD、IOWR、CS、A0控制接收CPU的命令、發(fā)出8259的狀態(tài)。8.3中斷控制器8259A二、中斷控制器8259A內部結構
(序)
CSRDWRA0D4D3讀寫操作
01001寫ICW10101
寫ICW2、ICW3、ICW4、OCW1010000寫OCW2010001寫OCW30010
讀IRR/ISR0011
讀IMR8259的讀寫功能3、級聯(lián)緩沖/比較器(1)緩沖方式:在多片8259A級聯(lián)的系統(tǒng)中,8259A通過總線驅動器和數(shù)據(jù)總線相聯(lián)。在緩沖方式下,SP#/EN#與總線驅動器的允許端相連,控制總線驅動器的啟動,當EN#=0,8259A控制數(shù)據(jù)送到CPU,當EN#=1,控制數(shù)據(jù)從CPU送到8259A。(2)非緩沖方式:此時各8259A直接與數(shù)據(jù)總線相連。SP#/EN#為輸入端,當SP#=1,該片為主片,當SP#=0,該片為從片。主片與從片通過CAS0~CAS2級連。主片的INTR與CPU的INTR連接;從片的INTR作為主片的IR0~IR7輸入。8.3中斷控制器8259A二、中斷控制器8259A內部結構
(序)
8.3中斷控制器8259A二、中斷控制器8259A內部結構
(序)
5、在服務寄存器IRS(8位)
正在服務的中斷源標志,當某個中斷被響應后,CPU發(fā)出第一個INTA信號,ISR中的相應位置“1”,一直被保存到該中斷處理結束。當多重中斷時,ISR的多位同時被置1。4、中斷請求寄存器
IRR(8位)
存放中斷請求信號,當IR0——IR7中的某個IR端有中斷請求時,IRR相應的某位置1。當該中斷被響應后,IRR相應的位被復位。優(yōu)先權IR0最高,IR7最低。8.3中斷控制器8259A二、中斷控制器8259A內部結構
(序)
6、中斷屏蔽寄存器
IMR(8位)用于存放對中斷請求的屏蔽信息。軟件編程使得IMR的某位為“1”時,相應IRR中的中斷請求被屏蔽;若IMR的某位為“0”時,允許相應IRR中的中斷請求進入中斷優(yōu)先級判別器。IMR的各中斷屏蔽位是獨立的,屏蔽了優(yōu)先級高的中斷,不影響其它較低優(yōu)先級的中斷允許。7、優(yōu)先權電路(PR)
對IRR保持的各中斷請求(已屏蔽的除外)進行優(yōu)先權判別,并在CPU的中斷響應周期將其送IRS。在出現(xiàn)多重中斷時,由PR判定是否允許所出現(xiàn)的中斷去打斷正在處理的中斷,讓優(yōu)先級更高的中斷優(yōu)先處理。8、控制邏輯向CPU輸出INTR中斷請求,接受CPU的中斷響應信號INTA#。8.3中斷控制器8259A二、中斷控制器8259A內部結構
(序)
8259A對中斷請求的處理過程:當某IRi有效時,IRR相應位置1若有效的IRi未被屏蔽,則向CPU發(fā)出中斷請求檢測到第1個INTA#信號后,置ISRi=1,IRRi=0檢測到第2個INTA#信號后,把ISRi=1中最高優(yōu)先級的中斷類型碼放到DB上若工作在AEOI方式,在第2個INTA#結束時,使ISRi復位;否則由CPU發(fā)出EOI命令使ISRi復位8.3中斷控制器8259A
(1)嵌套方式:用于優(yōu)先級的控制,嵌套方式分為一般和特殊兩種嵌套方式:完全嵌套方式(一般嵌套方式):
這種方式符合一般優(yōu)先級的控制原則,用于單片8259或級連方式中從8259。特點是只有優(yōu)先級高的中斷可以中斷比它優(yōu)先級低的中斷。特殊全嵌套方式:
在這種方式下,主8259在對從8259進行中斷處理時允許同一個從8259的不同中斷請求服務。用于級連方式中主8259。特點是允許中斷優(yōu)先級和它同級的中斷服務。
三、8259A的中斷管理方式(工作方式)(序)8.3中斷控制器8259A1.優(yōu)先級設置方式:在8259中優(yōu)先級的控制有兩種方式:固定優(yōu)先級:
IR0——IR7優(yōu)先級依次由高到低固定排列。循環(huán)優(yōu)先級:
在這種方式下,有自動循環(huán)和特殊循環(huán)優(yōu)先級兩種:(2)優(yōu)先級的規(guī)定自動循環(huán):剛被服務的中斷優(yōu)先級最低。
特殊循環(huán)(指定循環(huán)):被OCW2指令指定的優(yōu)先級最低。
三、8259A的中斷管理方式(工作方式)(序)8.3中斷控制器8259A1.優(yōu)先級設置方式(序)2.中斷結束處理方式當某一IRi中斷被服務時,ISR中的相應位ISRi=1。當服務結束后,則必須清零該ISRi位。使ISRi=0,采用什么方式對ISRi
進行清除就是這里所說的中斷結束方式。8259A有兩種結束方式,非自動和自動結束方式。
三、8259A的中斷管理方式(工作方式)(序)8.3中斷控制器8259A自動結束方式:該方式下不需要EOI命令,在第2個INTA#結束時,由8259A使ISRi自動復位;因此使用自動結束方式有可能響應更低級的中斷。
非自動結束方式:兩種EOI命令一般結束命令(EOI)特殊EOI方式(SEOI),在該方式下可以對正在處理的中斷以外的中斷標志進行清除。
三、8259A的中斷管理方式(工作方式)(序)8.3中斷控制器8259A2.中斷結束處理方式(序)
8259A的命令字8259A的控制命令分為初始化命令字ICWICW1~ICW4向8259A寫入ICW的過程稱為初始化編程操作命令字OCW
OCW1~OCW3向8259A寫入OCW的過程稱為操作方式編程
四、8259A的編程方法
8.3中斷控制器8259A8259A內部寄存器的尋址方法CS#RD#WR#A0D4D3讀寫操作010000寫OCW2寫OCW3寫ICW1寫ICW2,ICW3,ICW4,OCW1(順序寫入)00101x1xx00101xx讀出IRR、ISR讀出IMR需要CS#、A0、RD#、WR#和D4、D3的配合內部寄存器的訪問方法如下表:
四、8259A的編程方法
(序)8.3中斷控制器8259A8259的初始化流程如圖:寫ICW1寫ICW2級連?寫ICW3需ICW4?寫ICW4NNYY!
注意次序不可顛倒
四、8259A的編程方法
(序)8.3中斷控制器8259A初始化8259A必須從ICW1開始寫ICW1意味著重新初始化8259A寫入ICW1后,8259A的狀態(tài)如下:清除ISR和IMR(全0);將中斷優(yōu)先級設成初始狀態(tài):IR0最高,IR7最低;設定為一般屏蔽方式;采用非自動中斷結束方式;狀態(tài)讀出邏輯預置為讀IRR。8259A的初始化過程
四、8259A的編程方法
(序)8.3中斷控制器8259ALTIM:觸發(fā)方式=1高電平觸發(fā)=0上升沿觸發(fā)
A0 D7 D6 D5 D4 D3 D2 D1 D0
0 x
x
x 1 LTIM xSNGLIC4
IC4:ICW4控制=1要寫ICW4=0不寫ICW4(默認為全0)SNGL:級連控制=1單片=0級連8259A的初始化字
ICW1
四、8259A的編程方法
(序)8.3中斷控制器8259AT7~T3:中斷向量碼的高5位T2~T0:最低3位為中斷源的序號IRn000~111分別對應IR0~IR7由8259A根據(jù)中斷源的序號自動填入例如:若ICW2命令字為48H,則IR0的中斷向量碼為48H,IR7的中斷向量碼為4FH,等等。
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 T7T6 T5 T4 T3
x
x
x8259A的初始化字ICW2(中斷向量碼)
四、8259A的編程方法
(序)8.3中斷控制器8259A8259A的初始化字ICW3(級連控制字)
主片的級聯(lián)控制字
Si=1對應IRi線上連接了從片
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 S7S6 S5 S4 S3
S2
S1
S0從片的級聯(lián)控制字
ID2~ID0標識碼,說明本從片連接到主片的哪個IR引腳上。000~111分別對應IR0~IR7。
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 00 0 0 0
ID2 ID1 ID0
四、8259A的編程方法
(序)8.3中斷控制器8259AICW3——級連控制字(續(xù))ICW3必須與主從片的連接關系一致: 例如,主片的IR4與從片的INT線連接,則主片的ICW3=10H,從片的ICW3=04H。中斷響應時,主片通過級連線CAS2-CAS0送出被允許中斷的從片標識碼,各從片用自己的ICW3與CAS2-CAS0比較,二者一致的從片才可發(fā)送中斷向量碼。
四、8259A的編程方法
(序)8.3中斷控制器8259A8259A的初始化字ICW4(中斷結束方式字):
SFNM:特殊全嵌套1特殊全嵌套方式0一般全嵌套方式AEOI:自動EOI1自動EOI方式0非自動EOI方式A0 D7 D6 D5D4 D3 D2 D1 D0
1 00 0SFNM BUF M/S AEOI μPM
BUF:緩沖方式
M/S:主/從緩沖選擇BUFM/S11緩沖方式/主PIC10緩沖方式/從PIC0x非緩沖方式/正常
四、8259A的編程方法
(序)8.3中斷控制器8259ABUF:緩沖方式
M/S:主/從緩沖選擇BUFM/S11緩沖方式/主PIC10緩沖方式/從PIC0x非緩沖方式/正常μPM=18086/8088=08080/8085
四、8259A的編程方法
(序)8.3中斷控制器8259A例7-17:IBMPC/XT系統(tǒng)中,ROMBIOS中對8259A初始化程序為MOVAL,13H
OUT20H,AL
MOVAL,08HOUT21H,AL
MOVAL,09HOUT21H,AL
8259A的操作命令字OCW
OCW用于設置8259的工作狀態(tài)在初始化后寫入OCW的寫入順序可任意寫入地址要求:OCW1必須寫入奇地址端口(A0=1)OCW2,OCW3必須寫入偶地址端口(A0=0)
四、8259A的編程方法
(序)8.3中斷控制器8259A操作命令字OCW1(中斷屏蔽字):
Mi=1時中斷請求線IRi被屏蔽(不允許中斷)Mi=0時允許該IRi中斷OCW1將被寫入IMR寄存器。A0=1時讀OCW1可讀出設置的IMR內容。A0 D7 D6 D5 D4 D3 D2 D1 D0
1 M7M6 M5 M4 M3
M2
M1
M0
四、8259A的編程方法
(序)8.3中斷控制器8259A操作命令字OCW2(中斷結束和優(yōu)先級循環(huán)):
RSLEOI001一般EOI命令(復位ISR)011特殊EOI命令,(按L2-L0指定復位ISR)101一般EOI命令,優(yōu)先級自動循環(huán)100自動EOI,設置優(yōu)先級自動循環(huán)000自動EOI,取消優(yōu)先級自動循環(huán)
111特殊SEOI命令,按L2-L0指定IRi優(yōu)先級最低110不執(zhí)行EOI命令,按L2-L0指定IRi優(yōu)先級最低010無操作A0 D7 D6 D5 D4 D3 D2 D1 D0
0 RSL EOI 0 0
L2
L1
L0中斷結束命令自動循環(huán)優(yōu)先級特殊循環(huán)優(yōu)先級
四、8259A的編程方法
(序)8.3中斷控制器8259A操作命令字OCW3(屏蔽方式/查詢方式控制字):
ESMM:允許使能特殊屏蔽方式SMM:特殊屏蔽方式ESMMSMM11特殊屏蔽方式置位10特殊屏蔽方式復位0x非特殊屏蔽方式P(Polling):=1查詢方式
=0非查詢方式A0 D7 D6 D5 D4 D3 D2 D1 D0
0 0ESMMSMM 0 1 P RR RISRR:讀寄存器RIS:ISR/IRR選擇RRRIS11讀ISR10讀IRR0x無效
四、8259A的編程方法
(序)8.3中斷控制器8259A
8259A可以工作在查詢方式:CPU先寫一個D2=1的OCW3,再對同一地址讀入,即可得到如下狀態(tài)字節(jié):
IxxxxR2R1R0
I=1表示有中斷請求,中斷請求號為R2-R0
此查詢步驟可反復執(zhí)行,以響應多個同時發(fā)生的中斷。讀IRR/ISR:寫入此命令后,隨后再對同一地址讀,即可得到IRR或ISR的內容。操作命令字OCW3(屏蔽方式和讀出控制字):(序)
四、8259A的編程方法
(序)8.3中斷控制器8259A8.3中斷控制器8259A
五、8259A的級聯(lián)五、8259的中斷級聯(lián)CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0從82591#CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0從82592#CSA0D7-D0INTAINTCAS0CAS1CAS2SP/ENIR7IR6---IR0主8259GNDGNDVcc地址總線(16)控制總線(8)數(shù)據(jù)總線(8)RDWRCSA0D7--D0INTACAS0CAS1CAS2IR7IR6IR5IR4IR3IR2IR1IR0INTSP/EN從8259RDWRCSA0D7--D0INTACAS0CAS1CAS2SP/ENIR7IR6IR5IR4IR3IR2IR1IR0主8259INT外部中斷請求外部中斷請求例:某中斷級聯(lián)系統(tǒng),從片的INT端接主片的IR3,主片從IR1、IR3引入兩個中斷請求,中斷類型號為31H、35H。中斷服務程序的段基址為1000H,偏移量分別為2000H、3000H。從8259的IR4、IR5引入兩個中斷請求,中斷類型號為44H、45H。中斷服務程序的段基址為2000H,偏移量分別為3600H、4500H。0020001000300010004500200036002000116001140011200110000D6000D4000C4000C6IPCS31IPCS35IPCS44IPCS45
(1)中斷入口地址寫入中斷向量表MOVAX,1000H;送段地址MOVDS,AXMOVDX,2000H;送偏移地址MOVAL,31HMOVAH,25HINT21HMOVDX,3000HMOVAH,35HINT21HMOVAX,2000HMOVDS,AXMOVDX,3600HMOVAL,44HMOVAH,25HINT21HMOVDX,3000HMOVAH,35HINT21H(2)主片8259A初始化編程(端口地址FFC8H,F(xiàn)FC9H)MOVAL,11H;ICW1,級聯(lián),邊沿觸發(fā)MOVDX,0FFC8H;OUTDX,ALMOVAL,30H;ICW2,確定中斷類型號MOVDX,0FFC9H;OUTDX,ALMOVAL,08H;ICW3,IR3端接從INT端OUTDX,ALMOVAL,11H;ICW4,特殊嵌套,非緩沖方式OUTDX,ALMOVAL,0D5H;OCW1,允許IR1,IR3,IR5中斷OUTDX,ALMOVAL,20H;OCW2,普通EOI結束方式MOVDX,0FFC8H;OUTDX,AL(3)從片8259A初始化編程(端口地址FFC8H,F(xiàn)FC9H)MOVAL,11H;ICW1,級聯(lián),邊沿觸發(fā)MOVDX,0FFCAH;OUTDX,ALMOVAL,40H;ICW2,確定中斷類型號MOVDX,0FFCBH;OUTDX,ALMOVAL,03H;ICW3,從片接主片的IR3端OUTDX,ALMOVAL,01H;ICW4,完全嵌套,非緩沖方式OUT
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025安徽銅仁市民族中學引進專業(yè)技術人才5人模擬試卷及答案詳解(歷年真題)
- 2025年漳州能源社會招聘模擬試卷及答案詳解(名校卷)
- 2025年中國滑動護舷行業(yè)市場分析及投資價值評估前景預測報告
- 2025年春季內蒙古包頭職教園區(qū)綜合服務中心引進高層次和緊缺急需人才3人考前自測高頻考點模擬試題及參考答案詳解1套
- 2025年漳州市考試錄用公務員集中考前自測高頻考點模擬試題及完整答案詳解1套
- 2025鄂爾多斯市伊金霍洛旗發(fā)展改革和科學技術局招聘公益性崗位人員的考前自測高頻考點模擬試題及答案詳解1套
- 2025年甘肅省平?jīng)鋈A亭市策底鎮(zhèn)招聘專業(yè)化管理的村文書考前自測高頻考點模擬試題及答案詳解(新)
- 2025湖南省藥品檢驗檢測研究院招聘編外人員8人考前自測高頻考點模擬試題有完整答案詳解
- 2025湖北襄陽市中醫(yī)醫(yī)院(襄陽市中醫(yī)藥研究所)招聘急需專業(yè)技術人才55人考前自測高頻考點模擬試題完整參考答案詳解
- 2025湖北咸寧市通城城市發(fā)展建設投資(集團)有限公司第一期招聘考前自測高頻考點模擬試題附答案詳解(黃金題型)
- 2025《軍訓動員大會》班會教育
- 《汽車構造》課件-12 第十一章 汽車傳動系統(tǒng)
- 臨汾市社區(qū)工作者招聘筆試真題2024
- 人教版 六年級 語文 上冊 第2單元《7.開國大典》課件
- DG-TJ08-2467-2025 超低能耗建筑設計標準(居住建筑)
- 食品加工新技術課件
- 依視路培訓課件
- 有創(chuàng)動脈血壓監(jiān)測及護理
- 銀行廉潔從業(yè)培訓
- 2025至2030中國海工裝備制造行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 胖東來投訴管理制度
評論
0/150
提交評論