版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
20142014第6章20142014第三節(jié)可編程中斷控制器1.設置中 2.發(fā)中斷結束命令四、8259A在IBMPC/XT系統中的應用五、8259A在Pentium機中的應用20142014接口接口接口接口管理接口接口接口接口20142014中斷申請管理接口的主要功能向CPU的引腳INTR發(fā)中斷申請信當有多個外設同時發(fā)出中斷請求能按照一定的優(yōu)先級順序,向CPU發(fā)出中斷申使CPU能優(yōu)先響應優(yōu)先級最高的外部設備的中斷申在CPU中斷響應周期,針對不同外設的中斷請求向CPU傳送不同的中斷類型使CPU執(zhí)行相應的中斷子程在IBMPC機由8259A可編程中斷控制器(PIC)20142014二、8259A的引腳、編程結構和工作20142014可編程中斷控制器8259A是一種可編程中斷控制器,有如下功能 當CPU響應中斷時,為CPU提供中斷個外部中斷的優(yōu)先級排列方可以通過行指定。也可以通過編程 某些中斷請,或者通過碼。允許9片8259級聯,構成64級中斷系統器件用NMOS工藝制造,只需一組+5V電源,因電路是靜態(tài)的,無需時鐘輸入在PC/AT系列微機中,使用兩片8259級聯,構成15級中 雙列直插
2014~總~~片
(參 圖6-+方波鍵盤保留串口2串口1用于多級連情20142014D7~D0:數據線。用于與CPU之間傳送命令、狀態(tài)、中斷類型讀出信號。通知8259把某個內部寄存器的值送數據線D7~D0。寫入信號。通知8259把數據線D7~D0上的值寫入內部某個寄存器。A0:選擇內部寄存器的端口地在標準AT機中,使用兩片8259構成主從式中斷系主8259的端口地址:從8259的端口地址:INT:把IRQ7~IRQ0上的最高優(yōu)先級請求傳送到CPU的INTR引INTA:接收CPU的中斷響應信號。CPU發(fā)出的中斷響應信號為兩個負脈沖。20142014SP/
片2.8259A的編程結處理部
中 寄存
2014總~數據~~片選
0 0 00
0 0 寄存器000
×1 控×1碼 ICW2中斷類
100110010100OCW1中 寄存器00 00OCW2優(yōu)先級設置、發(fā)
1ICW4方式控1
001OCW3特 ,查詢方式設01控制部
20142014中斷請求寄存器~的Ii中斷服務寄存器Ii中中 寄存器存放中 字,某位=1表示對應的IRi輸入中斷優(yōu)先權判別電路
處理
0000000000
20148259A內部有94個初始化命令寄存
寄存器
00000000ICW1、ICW3、
控 3個操作命令寄存OCW2、當前中斷服務寄存器中斷申請寄存器
1×I3ICW2中斷類型號ICW3主從片關系ICW4方式控制
10中
101000000101控制部2014初始化命令字(ICW12014決定8259A的工作方 開機后,BIOS將8259A初始化為①IR0~IR7②IR0~IR7對應的中斷類型號分別為③優(yōu)先級IR0最高IR7ISR和IRR存放當前8259A的狀通 ISR和IRR的內容,可了解當前8259A工作情201420148259A的控制命令分初始化命令字向8259A寫入ICW的過程稱為初始化操作命令字向8259A寫入OCW的過程稱為操作方式20142014需要CS#、A0、RD#、WR#和D4、D3的配內部寄存器 方法如下表000010001寫01x1xx00101xx讀出20142014NYNY寫NYNY寫寫寫寫20142014初始化8259A必須從ICW1開寫ICW1意味著重新初始化寫入ICW1后,8259A的狀態(tài)如下清除ISR和IMR(全將中斷優(yōu)先級設成初始狀態(tài):IR0最高,IR7最低設定為一 方式采用非自動中斷結束方式狀態(tài)讀出邏輯預置為讀IRR2014ICW1——初始化 D6 ICW10 2014ICW1——初始化地址 特征0xxx1LTIM: =1 =0SNGL: =1 =0IC4:ICW4 =1要寫 ICW2——中斷向量2014 A15/T7A14/T6A13/T5A12/T4A11/T31xxxT7~T3:中斷向量碼的高5T2~T0:最低3位為中斷源的序號000~111分別對應由8259A根據中斷源的序號自動填例如20142014ICW3——ICW3用于級聯工作方式。對于級聯工作方式下要分別對主片、從片進行初化。對于主片、從片ICW3命令字分別為1主片的級聯控制Si=1對應IRi線上連接了從100000從片的級聯控制ID2~ID0標識碼,說明本從片連接到主片的哪個IR引腳上。000~111應IR0~IR720142014ICW3——級連控制字(續(xù)ICW3必須與主從片的連接關系一例如,主片的INC=10,。C送出被允許中斷CW3C2014201410001SFNM特殊全嵌1特殊全嵌套方0一般全嵌套方AEOI自動1自動EOI方0非自動EOI
BUF:緩沖方M/S主/從緩沖BUF 緩沖方式/主 緩沖方式/從 非緩沖方式/201420148259A的操作命令字OCW用于設置8259的工作狀在初始化后OCW的寫入順序寫入地址要OCW1必須寫入奇地址端口OCW2,OCW3必須寫入偶地址端口20142014OCW1——中 1Mi=1中斷請求線IRi (不允許中斷=0允許該IRi中OCW1將寫入IMRA0=1時讀OCW1可讀出設置的IMR內容201420140R0R00R:優(yōu)先級自動循環(huán):R=1,使用循環(huán)優(yōu)先級;R=0,固定優(yōu)SL:指定優(yōu)先級:SL1,指定優(yōu)先級L2~L0SL0L2~L0EOI:結束中斷命令:EOI=1,設置中斷結束命 SL001非指定EOI命令(NSEOI),全嵌套方011指定EOI命令(SEOI),全嵌套方式,按L2-L0編碼復位101NSEOI命令,優(yōu)先級自動循100自動EOI,設置優(yōu)先級自動000自動EOI,取消優(yōu)先級自動循環(huán)(固定優(yōu)先級111SEOI命令,按L2-L0編碼循環(huán)優(yōu)先級(L2-L0設為最低優(yōu)先級110按L2-L0編碼循環(huán)優(yōu)先級(L2-L0設為最低優(yōu)先級2014201489在上電初始之后,如未設定其它方式,則59自動▲中斷請求優(yōu)先級順序是IR0~IR7,其中IR0IR7優(yōu)先權最▲服務寄存器IS中得到響應的那一位被置“1”,且保持到中斷服務程序在返回前發(fā)出的中斷結束命令O殊的EOI命令為 其中,PORT為8259A的端口地址20142014利用非特殊EIS高的置“位。 方式和讀出控000001P方RR選方RR選ESMM
11讀11讀10讀0x
2014
P(Polling):=1查詢方=0非查詢方20142014OCW3(續(xù)查詢方式允許8259A不工作于中斷方式,而是以查詢方式工CPU先寫一個D2=1的OCW3,再對同一地址讀入,即可得到如下狀態(tài)節(jié) I=1表示有中斷請求,中斷請求號為R2-此查詢步驟可反復執(zhí)行,以響應多個同時發(fā)生的中斷20148259A編程 20148259A編程C化 ADI 接口地址為20H和中斷為上升發(fā);單片8259AICW4與IR0-IR3對應的中斷向量碼為08H- R4-
根據要求,各初始化參數及工作參數如ICW1 =ICW2=OCW1 =
中斷向中 201420148259A編程舉例(續(xù)初始化程序如;A0=0,寫;上升沿觸發(fā),單片,不寫;A0=1,寫;OCW1:IR4-2014201420HMOV OUT ;I/OMOV OUTMOV OUTMOV OUT20142014例:使主8259的 ,程序為OCW1AEQU21H;主8259OCW1 AL,OCW1A;讀出 B 20142014例:讀OCW3EQUIRREQUISREQUOUTIN20142014例:讀OCW3EQUIRREQUISREQUMOVOUTIN
;讀出命令,P=0,RR=1,RIS=0,選;在AL中讀得IRR201420148259A分兩步(1)處理外設中斷申請,決定是否向CPU發(fā)中斷申請信號(2)若發(fā)中斷申請信號,且CPU響應則在CPU20142014IR0~IR7引腳上有中斷申請,則將IRR相應位置②中 是否進入優(yōu)先級裁決器PRIMR對應位為0,允許中斷申請進入為1,不允許進入,中斷申請被 ③當前中斷服務寄存器ISR記錄CPU正在響應的中ISR中的某位為1,表示CPU正在響應此級中ISR中的某位為0,表示CPU沒有或已響應完此優(yōu)先級裁決器PR據新進入的中斷申請和ISR的內容決定是否發(fā)中斷申請如果進入的中斷申請比ISR中記錄的中斷優(yōu)先級則通過8259AINT引腳向CPU發(fā)出中斷請求如果進入的中斷申請不比ISR中記錄的中斷優(yōu)先級同級或低級,則不向CPU發(fā)中斷請求信20142014總 片 選1000010000001
00000000000000
控
10
1010
ICW2中斷類型ICW4方式控ICW3ICW4方式控
OCW1中 寄存器 OCW2優(yōu)先級、發(fā)
OCW3特 設②中 是否進入優(yōu)先級裁決器PR
2014IMR對應位為0,允許中斷申請進入優(yōu)先級裁決器為1,不允許進入,中斷申請被 總~~
數據 ~片選 控碼W2W2中類號ICW4方式控ICW4方式控W3主片系
000000000000000
100100000010010100100OCW1中斷 OCW2優(yōu)先級、發(fā)EOI0010100100OCW3OCW3特 設
③當前中斷服務寄存器ISR記錄CPU正在響應的ISR中的某位為1,表示CPU正在響應此級中即正在執(zhí)行此中斷源ISR中的某位為0,表示CPU沒有或已響應完此級中斷即不在執(zhí)行此中斷源
2014總~~
數據 ~片選 控碼W2W2中類號ICW4方式控ICW4方式控W3主片系
001000000100000
100100000011001010010010100OCW1中 寄存器0000OCW3OCW3特 設
2014④優(yōu)先級裁決器PR據新進入的中斷申請和ISR的內2014決定是否發(fā)中斷申請如果進入的中斷申請比ISR中記錄的中斷優(yōu)先級高則通過8259AINT引腳向CPU發(fā)出中斷請求信號總~~
數據 片選 控碼W2W2中類號ICW4方式控ICW4方式控W3主片系
00100000100000
10100000010010100100OCW1中斷 OCW2優(yōu)先級、發(fā)EOI0010100100OCW3OCW3特 設
20142014CPU接收到INTR上的中斷申請信號l如果IF標志為0,則CPU不響應此中斷申請信號, lIF標志為1則處理完當前的指令后進入中斷響應周通過INTA引腳發(fā)出兩個負脈沖信從數據總線上獲取中斷類進入中斷響應的過20148088CPU中斷響應周2014第一第一第二向量類20142014①將ISR中相應位置CPUIRR中對應的位清0,清除IRR總 片
10100010100000
中斷0
選
W2中類W2中類號
1001010
W3W3主片系
方式控
OCW1中 寄存器0000OCW3特殊 8259A在接收到第二個INTA中斷響應信號通過數據線,將被響應申請的中斷類型號送給CPU。②CPU獲得中斷類型號后,進入CPU響應中斷的過程
2014總 片
101000010100000
中斷0
選
W2中類W2中類號
1001010
W3W3主片系
方式控
OCW1中 寄存器0000OCW3特 設CPU響應中斷過取中斷類型號當前PSW清IF、TF標志為當前IP
20142014⑥取內存單元(0N4)字內容送⑦取內存單元(0N4+2字內容送
此時CS:IP指向中斷程序 2014三、2014設置中
處理
0000000000
20148259A內部有9
0000000000
控
1×I3
10
1010
ICW2中斷類型號中
ICW3主從片
00000101ICW4方式控
控制部
2014000000008259A有00000000
處理部
00000000000A0=0偶地址端A0=1奇地址端對9個寄存器的
均通過這兩個端口實
控
A0 寫入數據的特征1×1×
ICW2中斷類型 中
101001010000寫入的先后順 00 區(qū)分是對哪個寄進行操
ICW3主從片
10 10ICW4方式控
1
控制20142.8259A的編程20148259A有多種工作方式這些工作方式均可編程選使用相當靈尤其要求掌握如下(1)通過中 寄存器IMR的讀寫,設置中 (2)通過OCW2操作命令寄存器,發(fā)中斷結束EOI命設置中 10000001對10000001
2014總 片 選 控 控
000000000000000
寄存0010100寄存00101001
ICW2中斷類ICW3主從片ICW4ICW4
OCW1中0000OCW3OCW3特 設2014例已知IBMPC/XT系統中2014l新增允許IR2 AL, 21H,AL
;D2=0,允許IR2的中斷申 IR4 AL, ;讀入原IMR的內 AL,0001 21H, 2014201410000001總 片 選 控 控
000000000000000
寄存0000100寄存00001001
ICW2中斷類ICW3主從片ICW4ICW4
OCW1中0000OCW3OCW3特 設20142014由8259A的工作過程可知ISRCU響應某級中斷后,859A自動將IR的對應位置1,如果CU已R 在中斷響應后,對ISR中相應位的清0它是8259A認為中20142014總~
數據 片選 控 控W2W2中類號W3W3主片系ICW4ICW4方式控
10100010100000
100100000010010100100OCW1中斷 OCW2優(yōu)先級、發(fā)EOI0010100100OCW3OCW3特 設
2014ISR2014一、初始化8259A時,設置8259A工作方式為自動清0方式則在CPU響應中斷后,硬件自動將ISR的對應位清0二、初始化8259A時,設置8259A工作方式為非自動清0方式需在中斷子程中,通過軟件方式清0方法是:通過往OCW2寫入20H實現,即由偶地址端口寫00100100000
0R00 已知IBMPC系統中,8259A的偶地址端口地址為
2014BIOS初始化8259A時,設置8259A工作方式為非自動清0IRET返回前,發(fā)中斷結束命令EOIintsubPROC、、、、、、MOVAL,20HOUT20H,ALintsub
;寫入OCW22014四、8259A在IBMPC/XT系統中20141.8259A與系統的連線2.BIOS初始化程序對8259A的設置
2014注意:8259A在連線中的CLKAD7~AD0CLKAD7~AD0內存地址鎖存8282(兩片
數據收 T 總 控制器
數據接接控制總
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 房屋買賣合同的違約責任及處理措施
- 中介公司合同范本
- 個人農業(yè)貸款合同
- 拆墻和勞務分包合同關系
- 混凝土工程分包合同模板
- 私人健身指導協作合同
- 施工合同包括的防水與勞務分包
- 專業(yè)合同協議監(jiān)督服務
- 社區(qū)房屋買賣合同的合同簽訂要點
- 云計算服務采購合同項目
- 《中國旅游地理》新課程標準
- seagull船員英語STCW甲板操作級答案
- 胎元、命宮、身宮的推算
- 高速公路改擴建中的保通設計分析
- 美人蕉銹病病情調查報告
- 腦出血后遺癥臨床路徑
- 板式換熱器計算
- 事故隱患排查治理統計分析制度
- 重慶大學--數學模型--數學實驗作業(yè)二(共9頁)
- 新課改背景下促進小學教師專業(yè)成長的實踐與探索
- 《Statistics-1歷年考試真題分類匯編》
評論
0/150
提交評論