微型計算機的中斷系統(tǒng)_第1頁
微型計算機的中斷系統(tǒng)_第2頁
微型計算機的中斷系統(tǒng)_第3頁
微型計算機的中斷系統(tǒng)_第4頁
微型計算機的中斷系統(tǒng)_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

微型計算機原理及其應用

——第8章:中斷系統(tǒng)與中斷控制器8259A1第8章:中斷系統(tǒng)與中斷控制器8259A8.1中斷的概念及處理過程8.28086中斷系統(tǒng)8.3中斷控制器8259A2第8章:中斷系統(tǒng)與中斷控制器8259A中斷的概念及處理過程8086中斷系統(tǒng)中斷控制器8259A3第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程什么是中斷?

在CPU執(zhí)行程序的過程中,由于某種突發(fā)事件的發(fā)生,強迫CPU暫時停止正在執(zhí)行的程序,轉向對該突發(fā)事件進行處理,對這個事件處理結束后又能回到原中止的程序,接著中止前的狀態(tài)繼續(xù)執(zhí)行原來的程序,這一個過程就稱為中斷。把引起中斷的原因或觸發(fā)中斷請求的來源稱為中斷源。4第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷請求信號的產(chǎn)生

中斷方式提高了CPU的工作效率,但是它同時也提高了系統(tǒng)的硬件開銷。因為系統(tǒng)需增加含有中斷功能接口電路,用來產(chǎn)生中斷請求信號。以輸入方式為例,接口電路如圖所示。

外設發(fā)STB→數(shù)據(jù)入鎖存器,中斷請求觸發(fā)器置1→若沒有屏蔽則產(chǎn)生INTR→CPU滿足條件(允許中斷;指令執(zhí)行完)發(fā)→(進入中斷服務子程序)讀數(shù)據(jù),發(fā),和地址→清中斷請求觸發(fā)器,數(shù)據(jù)送D0~D7。

5第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷優(yōu)先級中斷優(yōu)先級(1)如果有多個不同優(yōu)先級的中斷源同時提出中斷請求時,CPU應當先響應最高優(yōu)先級的中斷源。(2)如果CPU正在對某一中斷源服務時,比它優(yōu)先級更高的中斷源提出中斷請求時,CPU能夠暫停正在執(zhí)行的中斷服務程序轉向對優(yōu)先級高的中斷源進行服務,當服務結束后再返回原優(yōu)先級較低的中斷服務程序繼續(xù)執(zhí)行。中斷嵌套正在運行的中斷處理程序,被優(yōu)先級高的中斷源中斷,從而轉入新的中斷處理程序,當新的中斷處理程序執(zhí)行完再回到原來的中斷處理程序,這一現(xiàn)象稱為中斷嵌套。6第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷優(yōu)先級

當系統(tǒng)中有多個設備提出中斷請求時,就有一個該響應誰的問題,也就是一個優(yōu)先級的問題,解決優(yōu)先級的問題一般可有三種方法:軟件查詢法、簡單硬件方法及專用硬件方法。

軟件查詢方法

只需有簡單的硬件電路,如將A、

B、C三臺設備的中斷請求信號“或”

后作為系統(tǒng)INTR,這時,A、B、C

三臺設備中只要至少有一臺設備提

出中斷請求,都可以向CPU發(fā)中斷

請求。進入中斷服務子程序后,再

用軟件查詢的方式分別對不同的設

備的服務,查詢程序的設計思想同

查詢式,查詢的前后順序就給出了

設備的優(yōu)先級。

7第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷優(yōu)先級——簡單硬件方法將所有的設備連成一條鏈,靠近CPU的設備優(yōu)先級最高,越遠的設備優(yōu)先級別越低,則發(fā)出中斷響應信號,若級別高的設備發(fā)出了中斷請求,在它接到中斷響應信號的同時,封鎖其后的較低級設備使得它們的中斷請求不能響應,只有等它的中斷服務結束以后才開放,允許為低級的設備服務。

8第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷優(yōu)先級——專用硬件方法

采用可編程的中斷控制器芯片,如Intel8259A。9第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷過程

是指中斷請求、中斷響應、中斷處理、中斷返回這四個過程。中段請求、中斷響應由硬件完成,中斷處理、中斷返回由軟件完成。

中斷請求

1)外部設備發(fā)中斷請求的條件:當外設準備就緒或本身工作已經(jīng)完成時,才向CPU提出中斷請求。

2)外部設備中斷請求的標志:當外設要求和CPU進行數(shù)據(jù)交換時,將中斷請求信號送往中斷請求觸發(fā)器或中斷控制器,經(jīng)它們處理后,向CPU發(fā)出中斷請求。中斷響應

如果CPU處于開中斷狀態(tài),經(jīng)判優(yōu)后響應其中最高優(yōu)先級的中斷請求,關中斷,將斷點壓入堆棧中(有的微機還將程序狀態(tài)字和相關寄存器的內容壓入堆棧)保存,以備返回原程序,緊接著將相應的中斷處理程序入口地址或中斷向量送CPU,轉入中斷服務程序。10第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷過程

中斷處理

保護現(xiàn)場。將在中斷處理程序中使用的有關寄存器的內容壓入堆棧保護起來。在現(xiàn)場保護的過程中,絕對不允許被中斷(應禁止中斷),否則現(xiàn)場將被破壞。當現(xiàn)場保護好后應開中斷。

中斷服務。即該中斷所要執(zhí)行的具體指令內容。

恢復現(xiàn)場。當中斷服務結束后,應用中斷結束命令清除中斷標志,立即關中斷,以保證恢復現(xiàn)場的過程不受干擾?;謴同F(xiàn)場就是把原來壓入堆棧的有關寄存器的內容彈出?,F(xiàn)場恢復后應開中斷,以便CPU響應更高級的中斷請求。中斷返回將壓入的斷點地址彈出,保證被中斷的程序按原來狀態(tài)執(zhí)行下去。11第8章:中斷系統(tǒng)與中斷控制器8259A——概念及處理過程中斷過程

中斷處理和中斷返回中的所有內容,也叫做中斷服務程序。即:12第8章:中斷系統(tǒng)與中斷控制器8259A中斷的概念及處理過程8086中斷系統(tǒng)中斷控制器8259A13第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷分類及中斷類型碼

中斷源可以分為兩大類,即外部(硬件)中斷和內部(軟件)中斷。硬件中斷:即通過外部的硬件產(chǎn)生的中斷,如打印機、鍵盤等。硬件中斷又可分為:可屏蔽中斷和不可屏蔽中斷。不可屏蔽中斷:由NMI引腳引入,它不受中斷允許標志的影響,每個系統(tǒng)中僅允許有一個,都是用來處理緊急情況的,如掉電處理。這種中斷一旦發(fā)生,系統(tǒng)會立即響應。可屏蔽中斷:由INTR引腳引入,它受中斷允許標志的影響,也就是說,只有當IF=1時,可屏蔽中斷才能進入,反之則不允許進入,可屏蔽中斷可有多個,一般是通過優(yōu)先級排隊,從多個中斷源中選出一個進行處理。軟件中斷:即根據(jù)某條指令或者對標志寄存器中某個標志的設置而產(chǎn)生,它與硬件電路無關,常見的如除數(shù)為0,或用INTn指令產(chǎn)生。14第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷分類及中斷類型碼

8086/8088系統(tǒng)最多可處理256級不同類型的中斷。15第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷分類及中斷類型碼

16第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷分類及中斷類型碼

中斷類型碼:8086為每個中斷源分配了一個中斷類型碼,其取值范圍為0~255,即可處理256種中斷。其中包括軟件中斷,系統(tǒng)占用的中斷以及開放給用戶使用的中斷。中斷類型碼或者包含在指令中,或者預先規(guī)定;所有內部中斷和NMI中斷都不執(zhí)行INTA總線周期;除單步中斷外,任何內部中斷都無法禁止且都比外部中斷優(yōu)先級高;

中斷優(yōu)先級內中斷(除法錯,INTO,INT)最高

最低非屏蔽中斷NMI可屏蔽中斷INTR單步中斷17第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷向量和中斷向量表中斷向量:把各個中斷服務子程序的入口都稱為一個中斷向量;中斷向量表:將這些中斷向量按一定的規(guī)律排列成一個表,就是所謂的中斷向量表,當中斷源發(fā)出中斷請求時,即可查找該表,找出其中斷向量,就可轉入相應的中斷服務子程序。向量表地址:中斷向量在中斷向量表中的位置。8086中斷系統(tǒng)中的中斷向量表是位于0段的0~3FFFH的存貯區(qū)內,每個中斷向量占四個單元,其中前兩個單元存放中斷處理子程序的入口地址的偏移量(IP),低位在前,高位在后;后兩個單元存放中斷處理子程序入口地址的段地址(CS),也是低位在前,高位在后,整個中斷向量的排列是按中斷類型號進行的。18第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷向量和中斷向量表0000H0004H0008H000CH0014H0080H03FFHIP偏移地址CS段基地址IP偏移地址CS段基地址IP偏移地址CS段基地址······中斷類型碼0(除法錯)中斷類型碼1(單步中斷)中斷類型碼2(NMI中斷)中斷類型碼3(斷點中斷)中斷類型碼4(溢出中斷)中斷類型碼5(保留)系統(tǒng)保留中斷用戶自定義中斷19第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷向量和中斷向量表00H~04H----系統(tǒng)專用10H~1FH----BIOS用40H~FFH----用戶用08H~0FH----硬件中斷20H~3FH----DOS用20第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷響應過程與時序21第8章:中斷系統(tǒng)與中斷控制器8259A——8086的中斷系統(tǒng)中斷響應過程與時序22第8章:中斷系統(tǒng)與中斷控制器8259A中斷的概念及處理過程8086中斷系統(tǒng)中斷控制器8259A23第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A性能概述1.具有8級中斷優(yōu)先控制,通過級連可以擴展至64級優(yōu)先權控制;2.每一級中斷都可以通過初始設置為允許或屏蔽狀態(tài);3.8259A的工作方式,可以通過編程進行設置,使用非常靈活;4.8259A采用NMOS制造工藝,只需要單一的+5V電源。24第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的內部結構和工作原理25第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的內部結構和工作原理數(shù)據(jù)總線緩沖器:它是8259A與系統(tǒng)數(shù)據(jù)總線的接口,是8位雙向三態(tài)緩沖器。CPU與8259A之間的控制命令信息、狀態(tài)信息以及中斷類型信息,都是通過該緩沖器傳送的。讀/寫控制邏輯:CPU通過它實現(xiàn)對8259A的讀/寫操作。級連緩沖器:用以實現(xiàn)8259A芯片之間的級連,使得中斷源可以由8級擴展至64級。控制邏輯電路:對整個芯片內部各部件的工作進行協(xié)調和控制。中斷請求寄存器IRR:8位,用以分別保存8個中斷請求信號,當相應的中斷請求輸入引腳有中斷請求時,該寄存器的相應位置1。中斷屏蔽寄存器IMR:8位,相應位用以對8個中斷源的中斷請求信號進行屏蔽控制。當其中某位置”0”時,則相應的中斷請求可以向CPU提出;否則,相應的中斷請求被屏蔽,即不允許向CPU提出中斷請求。該寄存器的內容為8259A的操作命令字OCW1,可以由程序設置或改變。中斷服務寄存器ISR:

8位,當CPU正在處理某個中斷源的中斷請求時,ISR寄存器中的相應位置1。優(yōu)先級比較器PR:用以比較正在處理的中斷和剛剛進入的中斷請求之間的優(yōu)先級別,以決定是否產(chǎn)生多重中斷或中斷嵌套。

26第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的外部引腳27第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的外部引腳D7-D0:雙向數(shù)據(jù)輸入/輸出引腳,用以與CPU進行信息交換。IR7-IR0:8級中斷請求信號輸入引腳。INT:中斷請求信號輸出引腳,高電平有效,用以向CPU發(fā)中斷請求,應接在CPU的INTR輸入端。INTA#:中斷響應應答信號輸入引腳,低電平有效,接在CPU的中斷應答信號輸出端。RD#、WR#:讀/寫控制信號輸入引腳,低電平有效,實現(xiàn)對8259A內部有關寄存器內容的讀操作。CS#:片選信號輸入引腳,低電平有效,決定了8259A的端口地址范圍。A0:8259A兩組內部寄存器的選擇信號輸入引腳,決定8259A的端口地址。CAS2-CAS0:級連信號引腳,當8259A為主片時,為輸出;否則為輸入,與信號配合,實現(xiàn)芯片的級連,這三個引腳信號的不同組合000~111,剛好對應于8個從片。SP#/EN#:為級連管理信號輸入引腳,在非緩沖方式下,若8259A在系統(tǒng)中作從片使用,則SP=1;否則SP=0;在緩沖方式下,用作8259A外部數(shù)據(jù)總線緩沖器的啟動信號。+5V、GND:電源和接地引腳。28第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作過程當有一條或若干條中斷請求輸入(IR7-IR0)有效時,則使中斷請求寄存器的IRR的相應位置位。若CPU處于開中斷狀態(tài),則在當前指令執(zhí)行完之后,響應中斷,并且發(fā)應答信號(兩個連續(xù)的INTA#負脈沖)。第一個INTA#負脈沖到達時,IRR的鎖存功能失效,對于IR7-IR0上發(fā)來的中斷請求信號不予理睬。使中斷服務寄存器ISR的相應位置1,以便為中斷優(yōu)先級比較器的工作做好準備。使中斷請求寄存器的相應位復位,即清除中斷請求。第二個INTA#負脈沖到達時,將中斷類型寄存器中的內容ICW2,送到數(shù)據(jù)總線的D7-D0上,CPU以此作為相應中斷的類型碼。若ICW4中的中斷結束位為1,那么,第二個INTA#負脈沖結束時,8259A將ISR寄存器的相應位清零。否則,直至中斷服務程序執(zhí)行完畢,才能通過輸出操作命令字EOI,使該位復位。29第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式

引入中斷的請求方式30第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式

引入中斷的請求方式31第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——優(yōu)先權的管理方式1.全嵌套方式這是8259A默認的優(yōu)先權設置方式,在全嵌套方式下,8259A所管理的8級中斷優(yōu)先權是固定不變的,其中IR0的中斷優(yōu)先級最高,IR7的中斷優(yōu)先級最低。CPU響應中斷后,請求中斷的中斷源中,優(yōu)先級最高的中斷源,在中斷服務寄存器ISR中的相應位置位,而且把它的中斷矢量送至系統(tǒng)數(shù)據(jù)總線,在此中斷源的中斷服務完成之前,與它同級或優(yōu)先級低的中斷源的中斷請求被屏蔽,只有優(yōu)先級比它高的中斷源的中斷請求才是運算的,從而出現(xiàn)中斷嵌套。2.特殊全嵌套方式特殊全嵌套方式與全嵌套方式基本相同,所不同的是,當CPU處理某一級中斷時,如果有同級中斷請求,那么CPU也會作出響應,從而形成了對同一級中斷的特殊嵌套。特殊全嵌套方式通常應用在有8259A級連的系統(tǒng)中,在這種情況下,對主8259A編程時,通常使它工作在特殊全嵌套方式下。這樣,一方面,CPU對于優(yōu)先級別較高的主片的中斷輸入是允許的,另一方面,CPU對于來自同一從片的優(yōu)先級別較高(但對于主片來講,優(yōu)先級別是相同的)的中斷也是允許、能夠響應的。

32第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——優(yōu)先權的管理方式3.優(yōu)先級自動循環(huán)方式

在實際應用中,中斷源優(yōu)先級的情況是比較復雜的,要求8級中斷的優(yōu)先級在系統(tǒng)工作過程中,可以動態(tài)改變。即一個中斷源的中斷請求被響應之后,其優(yōu)先級自動降為最低。系統(tǒng)啟動時,8級中斷優(yōu)先級默認為IR0—IR7,這時,剛好IR4發(fā)出了中斷請求,CPU響應之后,若8259A工作在優(yōu)先級自動循環(huán)方式下,則中斷優(yōu)先級自動變?yōu)镮R5、IR6、IR7、IR0、IR1、IR2、IR3、IR4。優(yōu)先級特殊循環(huán)方式

優(yōu)先級特殊循環(huán)方式與自動循環(huán)方式相比,只有一點不同,即初始化的優(yōu)先級是由程序控制的,而不是默認的IR0—IR7。

33第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式

引入中斷的請求方式34第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——中斷源的屏蔽方式1.普通屏蔽方式8259A的每個中斷請求輸入,都要受到屏蔽寄存器中相應位的控制。若相應位為“1”,則中斷請求不能送CPU。屏蔽是通過對屏蔽寄存器IMR的編程(操作命令字OCW1),來加以設置和改變的。2.特殊屏蔽方式有些場合下,希望一個中斷服務程序的運行過程中,能動態(tài)地改變系統(tǒng)中的中斷優(yōu)先級結構,即在中斷處理的一部分,禁止低級中斷,而在中斷處理的另一部分,又能夠允許低級中斷,于是引入了對中斷的特殊屏蔽方式。設置了特殊屏蔽方式后,用OCW1對屏蔽寄存器中的某一位復位時,同時也會使中斷服務寄存器ISR中的相應位復位,這樣就不只屏蔽了正在處理的等級中斷,而且真正開放了其它優(yōu)先級別較低的中斷請求。特殊屏蔽是在中斷處理程序中使用的,用了這種方式之后,盡管系統(tǒng)正在處理高級中斷,但對外界來講,只有同級中斷被屏蔽,而允許其它任何級別的中斷請求。

35第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式引入中斷的請求方式

36第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——結束中斷的處理方式1.中斷自動結束方式這種方式僅適用于只有單片8259A的場合,在這種方式下,系統(tǒng)一旦響應中斷,那么CPU在發(fā)第二個INTA#脈沖時,就會使中斷響應寄存器ISR中相應位復位,這樣一來,雖然系統(tǒng)在進行中斷處理,但對于8259A來講,ISR沒有相應的指示,就象中斷處理結束,返回主程序之后一樣。CPU可以再次響應任何級別的中斷請求。2.一般的中斷結束方式一般的中斷結束方式適用用在全嵌套的情況下,當CPU用輸出指令向8259A發(fā)一般中斷結束命令OCW2時,8259A才會使中斷響應寄存器ISR中優(yōu)先級別最高的位復位。3.特殊的中斷結束方式在特殊全嵌套模式下,系統(tǒng)無法確定哪一級中斷為最后相應和處理的中斷,也就是說,CPU無法確定當前所處理的是哪級中斷,這時就要采用特殊的中斷結束方式。特殊的中斷結束方式是指在CPU結束中斷處理之后,向8259A發(fā)送一個特殊的EOI中斷結束命令,這個特殊的中斷結束EOI命令,明確指出了中斷響應寄存器ISR中需要復位的位。37第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式

引入中斷的請求方式38第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——系統(tǒng)總線的連接方式1.緩沖方式在多片8259A級連的大系統(tǒng)中,8259A通過外部總線驅動器和數(shù)據(jù)總線相連,這就是緩沖方式。在緩沖方式下,8259的輸出信號作為緩沖器的啟動信號,用來啟動總線驅動器,在8259A與CPU之間進行信息交換。2.非緩沖方式當系統(tǒng)中只有一片或幾片8259A芯片時,可以將數(shù)據(jù)總線直接與系統(tǒng)數(shù)據(jù)總線相連,這時8259A處于非緩沖方式下。在這種方式下,8259A的作為輸入端設置,主片應接高電平,從片應接低電平。39第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式優(yōu)先權的管理方式中斷源的屏蔽方式結束中斷處理的方式系統(tǒng)總線的連接方式

引入中斷的請求方式40第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的工作方式——引入中斷請求的方式1.邊沿觸發(fā)方式8259A將中斷請求輸入端出現(xiàn)的上升沿,作為中斷請求信號,上升沿后相應引腳,可以一直保持高電平。2.電平觸發(fā)方式8259A將中斷請求輸入端出現(xiàn)的高電平作為中斷請求信號,在這種方式下,必須注意:中斷響應之后,高電平必須及時撤除,否則,在CPU響應中斷,開中斷之后,會引起第二次不應該有的中斷。3.中斷查詢方式當系統(tǒng)中的中斷源很多,超過64個時,則可以使8259A工作在查詢方式下,中斷查詢方式的特點是:a.中斷源仍往8259A發(fā)中斷請求,但8259A卻不使用INT信號向CPU發(fā)中斷請求信號。b.CPU內部的中斷允許標志復位,所以CPU對INT引腳上出現(xiàn)的中斷請求呈禁止狀態(tài)。c.CPU用軟件查詢的方法來確定中斷源,從而實現(xiàn)對設備的中斷服務,可見,中斷查詢方式,既有中斷的特點,又有查詢的特點,從外設的角度來看,是靠中斷的方式來請求服務,但從CPU的角度來看,是用查詢方式來確定發(fā)中斷請求的中斷源。41第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字

8259A的命令字有兩種。一種是初始化命令字(ICW),在8259A啟動之前寫入,使其處于預定的初始狀態(tài)。另一種是操作命令字(OCW),使處于初始狀態(tài)的8259去執(zhí)行具體的某種操作方式。操作命令字可在8259初始化后的任何時刻寫入。

42第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字1.初始化命令字1)ICW1:芯片控制初始化命令字,在A0=0,D4=1時寫入。

1:需ICW4

0:不需ICW41:單8259A0:多片8259A1:間隔為40:間隔為81:電平觸發(fā)0:邊沿觸發(fā)任意值X1LTIMAXSNGLIC4X

A0D7D6D5D4D3D2D1D00ICW1標志43第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字1.初始化命令字2)ICW2:設置中斷向量碼初始化命令字。

T5T4T30T600T7

A0D7D6D5D4D3D2D1D0144第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字1.初始化命令字3)ICW3:主片/從片初始化命令字。

000ID20ID1ID00

A0D7D6D5D4D3D2D1D01三位編碼對應從片接主控片的IR編號從屬片ICW3

A0D7D6D5D4D3D2D1D011:相應IR端接從片0:未接從片主控片ICW345第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字1.初始化命令字4)ICW4:方式控制字初始化命令字。ICW4用來設定8259A的工作模式。

1:86/88模式0:80/85模式1:自動EOI0:非自動結束0X:非緩沖方法10:緩沖方式/從屬片11:緩沖方式/主控片1:特殊完全嵌套方式0:一般完全嵌套方式0SFNMBUFM/S0AEOIPM0

A0D7D6D5D4D3D2D1D01ICW4標識碼46第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字

47第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字2.操作命令字1)OCW1:中斷屏蔽操作命令字,在A0=1時寫入到中斷屏蔽寄存器IMR中,當某一位為1時,就屏蔽與之相應的IR輸入。

M5

M4

M3

M2

M6

M1

M0

M7

A0D7D6D5D4D3D2D1D0

148第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字2.操作命令字2)OCW2:優(yōu)先循環(huán)方式和中斷結束方式操作字。其中R是優(yōu)先級循環(huán)控制位,R=1為循環(huán)優(yōu)先級,R=0為固定優(yōu)先級。

ISRi(IRi)序號0不設EIO命令1EIO命令EOI00L2SLL1L0R

A0D7D6D5D4D3D2D1D00OCW2標志

SL=0時,L2-L0無效SL=1時,L2-L0有效0非設循環(huán)優(yōu)先級方式1循環(huán)優(yōu)先級方式49第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的控制字2.操作命令字3)OCW3:特殊屏蔽方式和查詢方式操作字。OCW3的功能有三個方面:一是設置和撤消特殊屏蔽方式,二是設置中斷查詢方式,三是用來設置對8259A內部的寄存器的讀出命令。在A0=0,D4D3=01時寫入OCW3。

0×:無效10:可讀IRR11:可讀ISR1:允許查詢0:不查詢0×:無效10:復位特殊屏蔽11:設置特殊屏蔽SMM01PESMMRRRIS0

A0D7D6D5D4D3D2D1D00OCW3標志50第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程——8259A的級聯(lián)51第8章:中斷系統(tǒng)與中斷控制器8259A——中斷控制器8059A8259A的編程

[例7-1]

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論