版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第7章中斷控制器博學審問慎思明辨篤行第7章中斷控制器
§7.18259A的引腳信號、編程結構和工作原理
§7.28259A的工作方式
§7.38259A的初始化命令字和初始化流程
§7.48259A的操作命令字
§7.58259A使用舉例
§7.6多片8259A組成的主從式中斷系統
教學重點為:8259A的編程結構;
8259A的初始化流程;
8259A的初始化命令字與操作命令字;
8259A的實例;第7章中斷控制器第7章中斷控制器7.18259A的引腳信號、編程結構和工作原理7.1.18259A的外部信號和含義第7章中斷控制器8259A的編程結構第7章中斷控制器8259A的引腳計時鍵盤保留串口2
并口軟盤打印機IOW18.2HzA0CS8259A總線A0數據線
IORRDWR片選譯碼IR0IR1IR2IR3IR4IR5IR6IR7A5~A9D0~D7D0~D7VccSP/ENCA0CA1CA2GND+5V20~3FH用于多片8259A級連情況INTAINT
INTA
INTR串口1第7章中斷控制器7.1.28259A的編程結構和工作原理第7章中斷控制器SP/ENCA0CA1CA2IORIOW總線D0~D7數據線D0~D7INTAINTRA0片選譯碼A5~A9CSA0RD
INTAWRINT
1×
I3I4ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片連接關系
ICW4
方式控制0111A010010100OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級設置、發EOI
01
OCW3特殊屏蔽,查詢方式設置處理部分控制部分00000000
ISR當前中斷服務寄存器PR優先級分析器VCCGND100A0IR0IR1IR2IR3IR4IR5IR6IR7IRR中斷請求寄存器00000000
8259A的編程結構第7章中斷控制器①
中斷請求寄存器IRR鎖存外部的中斷申請。若IR0~IR7引腳上有中斷申請,則將IRR相應位置1IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制00000000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置PR優先級裁決器IRR中斷請求寄存器00000000
10010100INTR11第7章中斷控制器②中斷屏蔽寄存器IMR決定IRR中的中斷申請是否進入優先級裁決器PR。
IMR對應位為0,允許中斷申請進入優先級裁決器,
為1,不允許進入,中斷申請被IMR屏蔽。IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制00000000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置PR優先級裁決器IRR中斷申請寄存器10000001
10010100INTR第7章中斷控制器③優先級裁決器PR據新進入的中斷申請和ISR的內容,
決定是否發中斷申請信號。如果進入的中斷申請比ISR中記錄的中斷優先級高,則通過8259A的INT引腳向CPU發出中斷請求信號;如果進入的中斷申請不比ISR中記錄的中斷優先級高,同級或低級,則不向CPU發中斷請求信號。IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制001
00000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置PR優先級裁決器IRR中斷申請寄存器10000001
10010100INTR④當前中斷服務寄存器ISR
記錄CPU正在響應的中斷。ISR中的某位為1,表示CPU正在響應此級中斷,即正在執行此中斷源的中斷子程序;ISR中的某位為0,表示CPU沒有或已響應完此級中斷,即不在執行此中斷源的中斷子程序IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制001
00000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置PR優先級裁決器IRR中斷請求寄存器10000001
10010100INTR第7章中斷控制器
CPU接收到INTR上的中斷申請信號后:如果IF標志為0,則CPU不響應此中斷申請信號,
即中斷申請被IF屏蔽。如果IF標志為1,則處理完當前的指令后,進入中斷響應周期
通過INTA引腳發出兩個負脈沖信號,從數據總線上獲取中斷類型號,進入中斷響應的過程。第7章中斷控制器①將ISR中相應位置1,表示CPU響應此級中斷,執行此中斷源的中斷子程。8259A在接收到第一個INTA中斷響應信號后:001
00000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7PR優先級裁決器IRR中斷申請寄存器10000001
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置10010100IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RDWR
INTAINTD0~D7INTR01②
把IRR中對應的位清0,清除IRR中鎖存的中斷申請信號。①
通過數據線,將被響應申請的中斷類型號送給CPU。類型號由ICW2提供,在初始化8259A時已設定好。8259A在接收到第二個INTA中斷響應信號后:001
00000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7PR優先級裁決器IRR中斷申請寄存器10000001
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置10010100IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RDWR
INTAINTD0~D7INTR01②CPU獲得中斷類型號后,進入CPU響應中斷的過程,
執行中斷子程,處理中斷源申請的功能。返回7.28259A的工作方式
8259A有多種工作方式,這些工作方式由程序初始化來設置,使用起來相當靈活。1.優先級設置方式(1)固定優先級(也稱全嵌套方式)在全嵌套優先級方式中,8259A的中斷優先級從IR0到IR7,即IR0優先級最高,IR7優先級最能低。這是最常用、最基本的工作方式。(2)特殊全嵌套方式與固定全嵌套方式基本相同,但在特殊全嵌套方式中,當正在處理某一級中斷時,如果有同級的中斷請求發生,8259A也會響應,從而開放了同級中斷請求的特殊嵌套。這種方式主要用于8259A級聯系統中,在這種系統中,主片設置為特殊全嵌套方式,從片設置為其它優先級方式,這樣,某一從片的請求正在處理時,來自同一從片中的優先級較高的中斷請求也能得到響應。第7章中斷控制器(3)優先級自動循環方式優先級自動循環方式一般用于多個中斷源優先級相同的情況下。在這種方式中,優先級隊列是循環變化的,某一中斷源得到中斷服務后,優先自動降為最低。例如:在優先級自動循環方式中,優先級初始隊列由高到低為:IR0、IR1、IR2、……、IR6、IR7,如果此時IR2端有中斷請求,并予以響應,響應結束后,IR2的優先級自動降為最低,IR3的優先級為最高,這時,系統的優先級隊列由高到低變為:IR3、IR4、IR5、IR6、IR7、IR0、IR1、IR2。(4)優先級特殊循環方式優先級特殊循環方式與優先級自動循環方式相比,唯一的區別在于:前者是優先級初始隊列是程序編程來決定的,如果程序規定,IR4優先級最低,那么IR5優先級則最高;而后者的優先級初始隊列開始是IR0優先級最高,IR7優先級最低。第7章中斷控制器2.屏蔽中斷源的方式按照中斷源的屏蔽方式,8259A有以下兩種工作方式:(1)普通屏蔽方式在8259A內部有一個8位屏蔽寄存器(OCW1),對應IR0~IR7的8個中斷請求,可由程序設置將屏蔽寄存器中的任一位或幾位置1,這樣與之相對應的中斷請求就被屏蔽了。當然,要清除屏蔽,只要將屏蔽寄存器(OCW1)中的對應位復位即可。(2)特殊屏蔽方式特殊屏蔽方式是當設置了特殊屏蔽方式后,對屏蔽寄存器(IMR)中的對應位置1
,同時使當前中斷服務寄存器中的對應位自動清0,這樣,不只屏蔽了當前正在處理的這級中斷,還開放優先級較低的其它中斷請求。因此,特殊屏蔽方式,總是在中斷服務程序中使用。第7章中斷控制器3.中斷結束處理的方式在中斷服務程序結束時,必經發出中斷結束命令,使ISR中對應位復位,否則,系統便不能正常工作。使ISR對應位復位的動作稱為中斷結束處理。8259A有以下三種中斷結束方式:(1)中斷自動結束方式這種中斷結束方式是最簡單的方式,用于系統中只有一片8259A的情況。在這種方式中,系統一進入中斷過程,在第二個中斷響應信號INTA到來時,8259A會自動將當前中斷服務寄存器ISR中的相應位復位。(2)普通(一般)中斷結束方式該方式多用于全嵌套方式下。當CPU向8259A發出一條EOI命令時,8259A會把當前中斷服務寄存器中的最高非零位復位。具體操作是,只要在程序中向8259A的偶地址端口寫一個操作命令字OCW2,并使其中的EOI=1,SL=0,R=O即可。第7章中斷控制器(3)特殊的中斷結束方式這種方式是在程序中發出一條特殊的中斷結束命令,具體指出要清除ISR中的哪一位。往往用于非全嵌套方式。具體操作是,在程序中向8259A的偶地址端口寫一個命令字OCW2,并使其中的EOI=1,SL=1,R=0,此時L2,L1,L0這三位指出要清除ISR中的哪一位。需要指出的是,在級聯系統中,一般不使用中斷自動結束方式,而用非自動結束方式。而且,不管是使用普通中斷結束方式,還是使用特殊的中斷處理方式,在中斷服務程序結束時,都必經發出兩次中斷結束命令,一次是對主片,一次是對從片。第7章中斷控制器4.連接系統總線的方式根據8259A與系統總線的連接方式,可以分為緩沖方式和非緩沖方式兩種:(1)緩沖方式在多片8259A級聯的大系統中,8259A通過總線驅動器和數據總線相連,這種方式稱為緩沖方式。在這種方式中,將8259A的SP/EN端和總線驅動器的允許端相連,8259A在輸出狀態字和中斷類型碼的同時,向SP/EN端輸出一個低電平,此低電平信號作為總線驅動器的啟動信號。(2)非緩沖方式在只有一片或幾片8259A的系統中,8259A直接與CPU的數據總線相連,稱為非緩沖方式。在非緩沖方式中,8259A的SP/EN端作為輸入信號。在單片的8259A系統中,SP/EN端接高電平;在多片的8259A的系統中,主片的SP/EN端接高電平,從片的SP/EN端接低電平。第7章中斷控制器5.引入中斷請求的方式根據中斷請求信號的引入方式,8259A有以下三種方式:(1)電平觸發方式在電平觸發方式中,8259A把中斷請求輸入端IR出現高電平作為中斷請求信號。(2)邊沿觸發方式在邊沿觸發方式中,8259A把中斷請求輸入信號IR出現的上升沿作為中斷請求信號。(3)中斷查詢方式
8259A可工作于查詢方式來檢查外部設備的中斷請求。第7章中斷控制器普通全嵌套方式特殊全嵌套方式自動循環方式特殊循環方式優先權固定方式優先權循環方式設置優先權方式普通中斷結束方式特殊中斷結束方式自動中斷結束方式非自動中斷結束方式結束中斷處理方式屏蔽中斷源方式普通屏蔽方式特殊屏蔽方式中斷觸發方式邊沿觸發方式電平觸發方式數據線連接方式緩沖方式非緩沖方式第7章中斷控制器7.38259A的初始化命令字和初始化流程7.3.18259A的初始化命令字
8259A有4個初始化命令字ICW1~ICW4,用來對8259A進行初始狀態的設置。8259A在開始工作前必須寫入;必須按照ICW1~ICW4順序寫入。1.ICW1(芯片控制初始化命令字)的格式和含義偶地址端口×——表示可以任意為1為0都可以(建議為0)1——只能為1。作為標志中斷觸發方式:LTIM=1,電平觸發方式LTIM=0,邊沿觸發方式規定單片或級連方式:SNGL=1,單片方式SNGL=0,級連方式是否寫入ICW4IC4=1,要寫入ICW4IC4=0,不寫入ICW4,即ICW4規定的位全為0ICW1:A0=0,D4=1第7章中斷控制器2.ICW2(設置中斷類型號初始化命令字)的格式和含義ICW2:A0=1奇地址端口設置中斷向量號
T7~T3為中斷向量號的高5位低3位為由8259A自動確定:
IR0為000、IR1為001、…IR7為111中斷類型碼的高五位是由ICW2的五位確定,低三位是由引入中斷請求的引腳確定。例如:ICW2為40H,則8259A的IR0~IR7對應的8個中斷類型碼為40H、41H、42H、43H、44H、45H、46H、47H。第7章中斷控制器3.ICW3(標志主片/從片的初始化命令字)的格式和含義奇地址端口ICW3:A0=1級連命令字主片8259A:IRi=1對應IRi接有從片;否則IRi沒有連接從片從片8259A:ID0~ID2編碼說明從片INT引腳接到主片哪個IR引腳第7章中斷控制器4.ICW4(方式控制初始化命令字)的格式和含義ICW4:A0=1嵌套方式:特殊全嵌套方式(SFNM=1)普通全嵌套方式(SFNM=0)數據線的緩沖方式:緩沖方式(BUF=1)非緩沖方式(BUF=0)主片/從片選擇:主片(M/S=1)從片(M/S=0)中斷結束方式:自動中斷結束(AEOI=1)非自動中斷結束(AEOI=0)微處理器類型:16位80x86(PM=1)8位8080/8085(PM=0)奇地址端口第7章中斷控制器7.3.28259A的初始化流程1)ICW1寫入偶地址端口,ICW2~ICW4寫入奇地址端口。2)先依次寫入命令字ICW1和ICW2。3)只有當ICW1中的SNGL=0時,才送ICW3。主片和從片均送ICW3,但它們的格式不同。4)只有當ICW1中的IC4=1時,才送ICW4。對8086/8088系統,ICW4總是需要設置的。綜上所述,在微機系統中:采用單片8259A結構時,初始化要寫入的預置命令字是:ICW1、ICW2和ICW4。而采用級連時,要寫入的預置命令字是:ICW1、ICW2、ICW3和ICW4。第7章中斷控制器第7章中斷控制器ICW的設置方法:8259A在系統中占用二個端口地址,用A0來尋址ICW1:A0=0ICW2、3、4:A0=1,共用一個端口,所以區分這三個寄存器的唯一方法就是按照從ICW2~ICW4的排列順序進行初始化的設置,否則易出現錯誤。
例:在IBMPC機中,分配給中斷控制器的端口地址為20H,21H。并且其8259A為單片系統。第7章中斷控制器
INTA00EQU20H;8259A端口地址
INTA01EQU21H
。。。
MOVAL,13HOUTINTA00,AL;設ICW1,邊沿觸發,單片
MOVAL,08HOUTINTA01,AL;設ICW2,中斷類型號00001HMOVAL,09HOUTINTA01,AL;設ICW4,非特殊全嵌,非8位系統,非中斷自動結束00010011第7章中斷控制器7.48259A的操作命令字
8259A有三個操作命令字OCW1~OCW3。在應用程序中設置,設置次序沒有規定,對端口地址有嚴格規定,OCW1寫入奇地址,OCW2、OCW3寫入偶地址。1.OCW1(中斷屏蔽操作命令字)的格式和含義OCW1:A0=1奇地址端口屏蔽命令字:中斷屏蔽寄存器IMRDi=Mi對應IRi,為1禁止IRi中斷;為0允許IRi中斷。各位互相獨立。第7章中斷控制器2.OCW2(設置優先級循環方式和中斷結束方式的操作命令字)的格式和含義偶地址端口OCW2:A0=0R:中斷優先權控制R=1循環優先權R=0固定優先權SL=1L0~L2指明一個中斷級EOI=1
結束中斷指令L2~L0的3位編碼指定IR引腳該命令字:產生中斷結束方式和改變優先權順序A0=D4=D3=0:是OCW2的標志位。第7章中斷控制器A0=D7=D4=0,D3=1是OCW3的特征位,以便于與OCW1和OCW2相區別。3.OCW3(設置特殊屏蔽、中斷查詢、讀操作命令字)的格式和含義OCW3:A0=0偶地址端口設置中斷屏蔽方式ESMM特殊屏蔽模式允許位SMM特殊屏蔽模式位P
查詢方式位,P=1,8259A依靠發送查詢命令來獲得外部設備的中斷請求信息;P=0,處于非查詢方式。RR讀寄存器命令。RR=1,允許讀IRR和ISR的值;RR=0,禁止讀取。RIS讀IRR或RIS的選擇位。當RR=1時,RIS=1,允許讀當前中斷服務寄存器ISR的值;RIS=0,允許讀中斷請求寄存器IRR的值。第7章中斷控制器7.58259A的使用舉例【例】8259A在系統中的初始化編程。使用要求和特點如下:(1)一片8259A管理8級中斷,(2)端口的地址范圍為20H~3FH,實際使用20H和21H兩個端口。(3)8個中斷請求信號均為邊沿觸發。(4)采用固定優先級方式。(5)中斷類型碼的范圍是:08H~0FH。非自動中斷結束。硬件連接如圖所示:第7章中斷控制器8259A的初始化程序段:MOVAL,13H;寫ICW1,單片8259A,邊沿觸發,需設ICW4OUT20H,ALMOVAL,08H;寫ICW2,中斷類型碼的高五位為00001BOUT21H,ALMOVAL,01H;寫ICW4,8086/8088系統,固定優先級,非自動中斷結束OUT21H,AL采用中斷結束命令的程序段:MOVAL,20H;寫OCW2,向8259A發出普通EOI命令OUT20H,AL第7章中斷控制器(1)初始化命令字(ICW1-ICW4)
決定8259A的工作方式
通常是在計算機系統啟動時在初始程序設置,一旦設定,一般在系統工作過程不再改變。例開機后,BIOS將8259A初始化為:①
IR0~IR7中斷申請信號為上升沿觸發方式;②
IR0~IR7對應的中斷類型號分別為08H~0FH;③優先級IR0最高,IR7最低;(2)操作命令字(OCW1,OCW2,OCW3)
在應用程序中設定,動態地控制CPU處理中斷的過程(3)ISR和IRR存放當前8259A的狀態
通過讀取ISR和IRR的內容,可了解當前8259A工作情況小結第7章中斷控制器(1)通過中斷屏蔽寄存器IMR的讀寫,設置中斷屏蔽字(2)
通過OCW2操作命令寄存器,發中斷結束EOI命令要求掌握:通過往奇地址端口寫入OCW1(IMR)內容實現對應位為0,允許該級中斷申請進入對應位為1,禁止該級中斷申請進入(1)設置中斷屏蔽字第7章中斷控制器IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制00000000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發EOI
OCW3特殊屏蔽設置PR優先級裁決器IRR中斷申請寄存器10000001
10010100INTR第7章中斷控制器新增允許IR2的中斷申請
INAL,21H;讀入原IMR的內容
ANDAL,11111011B;D2=0,允許IR2的中斷申請
OUT21H,AL;寫入IMR禁止IR4的中斷申請
INAL,21H;讀入原IMR的內容
ORAL,00010000B;D4=1,禁止IR4的中斷申請
OUT21H,AL;寫入IMR例
已知IBMPC/XT系統中
8259A的奇地址端口地址為21H第7章中斷控制器設置完成后的結果:IORIOW總線數據線D0~D7INTAA0片選譯碼A5~A9CSA0RD
INTAWRINTD0~D7
ICW1
芯片控制
ICW2
中斷類型號
ICW3
主從片關系
ICW4
方式控制00000000
ISR當前中斷服務寄存器IR0IR1IR2IR3IR4IR5IR6IR7OCW1
中斷屏蔽寄存器IMR
00
OCW2
優先級、發E
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高校舞蹈教學學生創新能力培養路徑研究
- 港口自動化碼頭改造項目專項債資金申請報告
- 風電場項目環境影響報告書
- 跨國跨境支付結算匯率風險分擔-基于國際支付結算匯率風險規則與數字資產跨境支付合約條款規范分析
- CN116193145B 圖像解碼裝置、圖像解碼方法和程序 (Kddi株式會社)
- CN116183061B 一種逐小時近地表氣溫衛星遙感估算方法及裝置 (國家衛星氣象中心(國家空間天氣監測預警中心))
- 2026-2030中國工業地產行業市場現狀供需分析及重點企業投資評估規劃分析研究報告
- 2026年維修服務企業品牌推廣案例
- CN115883213B 基于連續時間動態異質圖神經網絡的apt檢測方法及系統 (南京南瑞信息通信科技有限公司)
- 長郡十八校聯盟2023屆高三第一次聯考(全國卷)理科數學試題
- 黃金貴金屬精煉項目環境影響報告書
- PCI術后血脂管理
- 水利行業從業人員安全培訓手冊
- GB 4053.3-2025固定式金屬梯及平臺安全要求第3部分:工業防護欄桿及平臺
- 2025年山東職教英語試卷及答案
- 鋼結構加固設計標準
- 【施工】建設工程施工現場安全管理研究論文開題報告和任務書
- 2025中遠海運戰略性新興產業人才社會招聘265人筆試歷年常考點試題專練附帶答案詳解2套試卷
- 胃癌合并肝轉移綜合治療方案
- 南昌水業集團南昌工貿有限公司2026年招聘考前自測高頻考點模擬試題濃縮300題必考題
- 退休支部工作計劃2025完整版
評論
0/150
提交評論