微機(jī)原理講義(第7章中斷控制器的編程結(jié)構(gòu)工作方式等)_第1頁(yè)
微機(jī)原理講義(第7章中斷控制器的編程結(jié)構(gòu)工作方式等)_第2頁(yè)
微機(jī)原理講義(第7章中斷控制器的編程結(jié)構(gòu)工作方式等)_第3頁(yè)
微機(jī)原理講義(第7章中斷控制器的編程結(jié)構(gòu)工作方式等)_第4頁(yè)
微機(jī)原理講義(第7章中斷控制器的編程結(jié)構(gòu)工作方式等)_第5頁(yè)
已閱讀5頁(yè),還剩87頁(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)介

1、第第7章章 中斷控制器中斷控制器的編程結(jié)構(gòu)、工作方式及編程的編程結(jié)構(gòu)、工作方式及編程湖南中醫(yī)藥大學(xué)湖南中醫(yī)藥大學(xué) 王志輝王志輝主要內(nèi)容主要內(nèi)容8259A的外部信號(hào)、編程結(jié)構(gòu)和工作原理8259A的初始化命令字和初始化流程8259A的操作命令字8259A的工作方式多片8259A構(gòu)成的主從式中斷系統(tǒng)本章重點(diǎn):u8259A的編程結(jié)構(gòu)的編程結(jié)構(gòu)u8259A的工作方式以及工作方式的分類依據(jù)的工作方式以及工作方式的分類依據(jù)u8259A的初始化命令字及其含義的初始化命令字及其含義u8259A的初始化方法的初始化方法u8259A的操作命令字和設(shè)置方法的操作命令字和設(shè)置方法u多片多片8259A構(gòu)成的主從式中斷系統(tǒng)

2、構(gòu)成的主從式中斷系統(tǒng)中斷的基本概念中斷的基本概念n 什么是中斷? 在CPU執(zhí)行程序的過(guò)程中,由于某種突發(fā)事件的發(fā)生,強(qiáng)迫CPU暫時(shí)停止正在執(zhí)行的程序,轉(zhuǎn)向?qū)υ撏话l(fā)事件進(jìn)行處理,對(duì)這個(gè)事件處理結(jié)束后又能回到原中止的程序,接著中止前的狀態(tài)繼續(xù)執(zhí)行原來(lái)的程序,這一個(gè)過(guò)程就稱為中斷中斷。 把引起中斷的原因或觸發(fā)中斷請(qǐng)求的來(lái)源稱為中斷源中斷源。n 中斷請(qǐng)求信號(hào)的產(chǎn)生 中斷功能接口電路,用來(lái)產(chǎn)生中斷請(qǐng)求信號(hào)。 中斷方式提高了CPU的工作效率,但是它同時(shí)也提高了系統(tǒng)的硬件開銷。以輸入方式為例,接口電路如圖所示。8086/8088的中斷系統(tǒng)的中斷系統(tǒng)非屏蔽中斷源非屏蔽中斷源中斷邏輯中斷邏輯INTO指令指令單步

3、單步中斷中斷除法除法錯(cuò)誤錯(cuò)誤INT N指令指令CPUINTRNMI可屏蔽中斷源可屏蔽中斷源8259A中斷中斷控制器控制器IR0IR1IR2IR3IR4IR5IR6IR7外外設(shè)設(shè)中中斷斷源源 INTA中斷需要解決的問題中斷需要解決的問題n 中斷源的識(shí)別 系統(tǒng)有多個(gè)中斷請(qǐng)求,CPU如何識(shí)別哪個(gè)中斷源發(fā)出的請(qǐng)求?l 辦法辦法1:向量中斷(硬件):向量中斷(硬件)l 辦法辦法2:中斷查詢(軟:中斷查詢(軟/硬件結(jié)合)硬件結(jié)合)n 中斷優(yōu)先級(jí)有多個(gè)中斷同時(shí)請(qǐng)求,CPU如何應(yīng)對(duì)?l 辦法辦法1:軟件查詢方式:軟件查詢方式l 辦法辦法2:簡(jiǎn)單硬件方式:簡(jiǎn)單硬件方式菊花鏈法菊花鏈法l 辦法辦法3:專用硬件方式

4、:專用硬件方式n 中斷嵌套 中斷處理過(guò)程中,又有中斷提出請(qǐng)求,怎么辦?l 辦法辦法1:鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路:鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路l 辦法辦法2:優(yōu)先權(quán)編碼電路:優(yōu)先權(quán)編碼電路中斷控制器的功能中斷控制器的功能n 在有多個(gè)中斷源的系統(tǒng)中,接受外部的中斷請(qǐng)求,并進(jìn)行判斷,選中當(dāng)前優(yōu)先級(jí)最高的中斷請(qǐng)求,再將此請(qǐng)求送到CPU的INTR端;n 當(dāng)CPU響應(yīng)中斷并進(jìn)入中斷處理程序后,中斷控制器仍然負(fù)責(zé)對(duì)外部中斷請(qǐng)求的管理n 當(dāng)某個(gè)外部中斷請(qǐng)求的優(yōu)先級(jí)高于當(dāng)前正在處理的中斷優(yōu)先級(jí)時(shí),中斷控制器會(huì)讓此中斷通過(guò)而到達(dá)CPU的INTR端,從而實(shí)現(xiàn)中斷的嵌套n 反之,對(duì)級(jí)別低的中斷則禁止。1 1 中斷控制中斷控制8259

5、A8259A8259A的工作特點(diǎn)n 具有8級(jí)中斷優(yōu)先控制,通過(guò)級(jí)連可以擴(kuò)展至64級(jí)優(yōu)先權(quán)控制n 每一級(jí)中斷都可以通過(guò)初始設(shè)置為允許或屏蔽狀態(tài)n 8259A的工作方式可以通過(guò)編程設(shè)置,使用靈活n 8259A采用NMOS( Negative channel-Metal-Oxide-Semiconductor ,N型金屬氧化物半導(dǎo)體)制造工藝,只需要單一的+5V電源8259A 的內(nèi)部結(jié)構(gòu)與的內(nèi)部結(jié)構(gòu)與外部外部引腳信號(hào)引腳信號(hào) 控制邏輯中斷服務(wù)寄存器ISR優(yōu)先權(quán)電路PR中斷請(qǐng)求寄存器IRR中斷屏蔽寄存器IMR讀寫控制邏輯級(jí)聯(lián)緩沖比較器數(shù)據(jù)總線緩沖器D0D7WRCSENSPA0CAS0CAS1CAS2I

6、NTAINTIR0IR1IR7RD8259A外部引腳信號(hào)8259A的引腳的引腳 雙列直插式芯片,雙列直插式芯片,28個(gè)引腳個(gè)引腳方方 波波鍵鍵 盤盤保保 留留串串 口口2 硬硬 盤盤軟軟 盤盤打印機(jī)打印機(jī)IOW18.2HzA0CS8259A總線總線A0數(shù)數(shù) 據(jù)據(jù) 線線 IORRDWR片片選選譯譯碼碼IR0IR1IR2IR3IR4IR5IR6IR7A5A9D0D7D0D7VccSP/ENCA0CA1CA2GND+ 5V203FH用于多片用于多片8259A級(jí)連情況級(jí)連情況INTAINT INTA INTR串串 口口1 定時(shí)器定時(shí)器8259A的外部引腳信號(hào)的外部引腳信號(hào)n D7-D0: 雙向數(shù)據(jù)輸入

7、/輸出引腳 用以與CPU進(jìn)行信息交換n IR7-IR0: 8級(jí)中斷請(qǐng)求信號(hào)輸入引腳 規(guī)定的優(yōu)先級(jí)為IR0IR1IR7 當(dāng)有多片8259A形成級(jí)聯(lián)時(shí),從片的INT與主片的IRi相連。n INT: 中斷請(qǐng)求信號(hào)輸出引腳,高電平有效 用以向CPU發(fā)中斷請(qǐng)求,接在CPU的INTR輸入端。RD8259A的外部引腳信號(hào)n INTA: 中斷響應(yīng)應(yīng)答信號(hào)輸入引腳,低電平有效,接CPU的中斷應(yīng)答信號(hào)輸出端 在CPU發(fā)出第二個(gè)時(shí),8259A將其中最高級(jí)別的中斷請(qǐng)求的中斷類型碼送出。n RD: 讀控制信號(hào)輸入引腳,低電平有效 實(shí)現(xiàn)對(duì)8259A內(nèi)部有關(guān)寄存器內(nèi)容的讀操作。RD8259A的外部引腳信號(hào)n WR 寫控制信

8、號(hào)輸入引腳,低電平有效 實(shí)現(xiàn)對(duì)8259A內(nèi)部有關(guān)寄存器的寫操作。n CS: 片選信號(hào)輸入引腳,低電平有效 一般由系統(tǒng)地址總線的高位,經(jīng)譯碼后形成 決定了8259A的端口地址范圍。RD8259A的外部引腳信號(hào)n A0:8259A兩組內(nèi)部寄存器的選擇信號(hào)輸入引腳決定8259A的端口地址。A00ICW1、OCW2、OCW3;A01 ICW2ICW4、OCW1RD8259A的外部引腳信號(hào)n CAS2CAS0: 級(jí)連信號(hào)引腳 當(dāng)8259A為主片時(shí),為輸出;否則為輸入 與-SP/-EN信號(hào)配合,實(shí)現(xiàn)芯片的級(jí)連 這三個(gè)引腳信號(hào)的不同組合000111,剛好對(duì)應(yīng)于8個(gè)從片。n SP/EN: -SP為級(jí)連管理信號(hào)

9、輸入引腳 在非緩沖方式下,若8259A在系統(tǒng)中作從片使用,則-SP=1;否則-SP=0; 在緩沖方式下,用作8259A外部數(shù)據(jù)總線緩沖器的啟動(dòng)信號(hào)。n +5V、GND: 電源和接地引腳RDW9-217 8251A初始化的約定:初始化的約定: 復(fù)位后,第一次給復(fù)位后,第一次給奇地址奇地址端口寫端口寫入的值作為入的值作為方式字送入方式寄存器方式字送入方式寄存器 如規(guī)定為如規(guī)定為同步模式同步模式,那么,接下來(lái),那么,接下來(lái)往往奇地址奇地址端口寫入的是端口寫入的是同步字符同步字符。如果是。如果是雙同步雙同步,則先后,則先后兩次兩次寫入同步字符。寫入同步字符。 接下來(lái),只要不是復(fù)位命令,接下來(lái),只要不是

10、復(fù)位命令,CPU給奇地址寫入的是給奇地址寫入的是控制字控制字,給,給偶地址偶地址端口端口寫入寫入的是要的是要發(fā)送的數(shù)據(jù)發(fā)送的數(shù)據(jù)。 8251A使用前必須進(jìn)行初始化,以確定工作方式、傳送速率、字符格式以及停止位長(zhǎng)度等;改變8251A的工作方式時(shí)必須再次進(jìn)行初始化編程;簡(jiǎn)述簡(jiǎn)述8251A的初始化流程的初始化流程?描述描述8255A的內(nèi)部結(jié)構(gòu)及各個(gè)部件功能?的內(nèi)部結(jié)構(gòu)及各個(gè)部件功能?(1)端口端口A 是一個(gè)獨(dú)立的是一個(gè)獨(dú)立的8位數(shù)據(jù)位數(shù)據(jù)I/O口,口,它的內(nèi)部有對(duì)它的內(nèi)部有對(duì)數(shù)據(jù)輸入數(shù)據(jù)輸入/輸輸出的鎖存出的鎖存功能。功能。(2)端口端口B 是一個(gè)獨(dú)立的是一個(gè)獨(dú)立的8位數(shù)據(jù)位數(shù)據(jù)I/O口,口,對(duì)對(duì)輸

11、入的數(shù)據(jù)不鎖存輸入的數(shù)據(jù)不鎖存,僅對(duì),僅對(duì)輸出的數(shù)據(jù)鎖存輸出的數(shù)據(jù)鎖存。(3)端口端口C 可以看作是一個(gè)可以看作是一個(gè)獨(dú)立的獨(dú)立的8位位I/O口口;還可以用作還可以用作A口和口和B口的控制信號(hào)。對(duì)輸出數(shù)據(jù)口的控制信號(hào)。對(duì)輸出數(shù)據(jù)進(jìn)行進(jìn)行鎖存,對(duì)輸入數(shù)據(jù)不鎖鎖存,對(duì)輸入數(shù)據(jù)不鎖存。存。 2.A2.A組控制和組控制和B B組控制組控制兩個(gè)功能:即兩個(gè)功能:即一是一是接收芯片接收芯片內(nèi)部總線上的控制字;內(nèi)部總線上的控制字;二是二是接收來(lái)自讀接收來(lái)自讀/ /寫控寫控制邏輯電路的讀制邏輯電路的讀/ /寫命寫命令。令。3.3.讀讀/ /寫控制邏輯電路寫控制邏輯電路 負(fù)責(zé)管理負(fù)責(zé)管理8255A8255A的的

12、數(shù)據(jù)傳輸數(shù)據(jù)傳輸過(guò)程。它接收過(guò)程。它接收CSCS及來(lái)自地及來(lái)自地址總線的信號(hào)址總線的信號(hào)A1A1、A0A0和和控控制總線的信號(hào)制總線的信號(hào)RESETRESET、RDRD、WRWR的信號(hào),的信號(hào),再由它們完成再由它們完成對(duì)數(shù)據(jù)、狀態(tài)和控制信息對(duì)數(shù)據(jù)、狀態(tài)和控制信息的傳輸。的傳輸。描述描述8255A的的A/B組控制部件以及讀寫控制邏輯電路功能?組控制部件以及讀寫控制邏輯電路功能?4. 4. 數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器是一個(gè)雙向三態(tài)的是一個(gè)雙向三態(tài)的8 8位數(shù)據(jù)位數(shù)據(jù)緩沖器。緩沖器。8255A8255A正是通正是通過(guò)過(guò)數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器與系與系統(tǒng)統(tǒng)數(shù)據(jù)總線數(shù)據(jù)總線相連。相連。輸入數(shù)據(jù)、輸

13、出數(shù)據(jù)、輸入數(shù)據(jù)、輸出數(shù)據(jù)、CPUCPU發(fā)給發(fā)給8255A8255A的控制字的控制字都都是通過(guò)該部件傳遞的。是通過(guò)該部件傳遞的。n方式方式0: 也叫基本輸入輸出方式。也叫基本輸入輸出方式。 (1)(1)三個(gè)端口都可作為獨(dú)立的輸入或輸出口,各端口間沒有必然的關(guān)系。三個(gè)端口都可作為獨(dú)立的輸入或輸出口,各端口間沒有必然的關(guān)系。(2)(2)這種方式下,這種方式下,輸出可鎖存數(shù)據(jù),輸入是不鎖存輸出可鎖存數(shù)據(jù),輸入是不鎖存的。的。n使用場(chǎng)合: 同步傳輸:發(fā)送方和接收方由發(fā)送方和接收方由同一時(shí)序同一時(shí)序信號(hào)來(lái)管理,信號(hào)來(lái)管理, CPUCPU不需要查詢外設(shè)不需要查詢外設(shè)的狀態(tài)的狀態(tài),對(duì)接口要求很簡(jiǎn)單,對(duì)接口要

14、求很簡(jiǎn)單, ,只要能傳送數(shù)據(jù)就行,此時(shí)只要能傳送數(shù)據(jù)就行,此時(shí)8255A8255A的的三個(gè)數(shù)據(jù)端三個(gè)數(shù)據(jù)端口可以實(shí)現(xiàn)三路數(shù)據(jù)傳送口可以實(shí)現(xiàn)三路數(shù)據(jù)傳送。 查詢式傳輸:因?yàn)闆]有應(yīng)答信號(hào),一般將因?yàn)闆]有應(yīng)答信號(hào),一般將A A、B B口常作為數(shù)據(jù)口,把口常作為數(shù)據(jù)口,把C C口的兩口的兩部分用來(lái)輸出一些控制信號(hào)和接收一些狀態(tài)信號(hào)部分用來(lái)輸出一些控制信號(hào)和接收一些狀態(tài)信號(hào),這樣端口,這樣端口C C用來(lái)配合端口用來(lái)配合端口A A和和B B工作。工作。方式方式1:又稱為又稱為選通的輸入選通的輸入/ /輸出方式輸出方式。 (1 1)端口)端口A A和端口和端口B B可以分別作為輸入端口或輸出端口??梢苑謩e作

15、為輸入端口或輸出端口。(2 2)如果端口)如果端口A A和端口和端口B B只有一個(gè)只有一個(gè)工作于方式工作于方式1 1,端口,端口C C中就有中就有3 3位位被規(guī)定為被規(guī)定為配配合方式合方式1 1工作的信號(hào),這時(shí),工作的信號(hào),這時(shí),另一個(gè)端口和端口另一個(gè)端口和端口C C的其它位可工作于方的其它位可工作于方式式0 0。(3 3)如果端口)如果端口A A和和B B都都工作在方式工作在方式1 1,那么端口,那么端口C C則有則有6 6位位分別作為分別作為A A口和口和B B口的口的應(yīng)答聯(lián)絡(luò)信號(hào),并且其排列是固定的,應(yīng)答聯(lián)絡(luò)信號(hào),并且其排列是固定的,剩余的剩余的2 2位位可工作于方式可工作于方式0 0。

16、使用場(chǎng)合:使用場(chǎng)合: 適用于適用于采用中斷方式進(jìn)行輸入輸出的場(chǎng)合,采用中斷方式進(jìn)行輸入輸出的場(chǎng)合,外設(shè)能為外設(shè)能為8255A提供選擇信號(hào)或數(shù)據(jù)接收應(yīng)答信號(hào)提供選擇信號(hào)或數(shù)據(jù)接收應(yīng)答信號(hào) 方式方式2:也叫雙向傳輸方式,具有如下也叫雙向傳輸方式,具有如下特點(diǎn)特點(diǎn): (1 1)只適用于端口只適用于端口A A,相當(dāng)于雙向的方式,相當(dāng)于雙向的方式1 1傳輸。傳輸。 (2 2)端口端口C C用用5 5條線作為條線作為A A口的聯(lián)絡(luò)信號(hào),并且排列是固口的聯(lián)絡(luò)信號(hào),并且排列是固定定的。的。使用場(chǎng)合:使用場(chǎng)合: 并行外部設(shè)備既可以作為輸入設(shè)備,又可作為輸出設(shè)備,并且輸入輸出動(dòng)作不會(huì)同時(shí)進(jìn)行的場(chǎng)合。8259A的編

17、程結(jié)構(gòu)和工作原理(的編程結(jié)構(gòu)和工作原理(先看書先看書P237頁(yè)!頁(yè)?。?259A的編程結(jié)構(gòu)和工作原理n 下半部有7個(gè)8位可編程寄存器分為兩組:第一組4個(gè):初始化命令字ICW1-ICW4第二組3個(gè):操作命令字OCW1-OCW3n 上半部為處理部件中斷請(qǐng)求寄存器IRR中斷服務(wù)寄存器ISR中斷屏蔽寄存器IMR優(yōu)先權(quán)分析器PR中斷控制中斷控制n 中斷請(qǐng)求寄存器IRR 保存8條外界中斷請(qǐng)求信號(hào)IR0IR7的請(qǐng)求狀態(tài) Di位為1表示IRi引腳有中斷請(qǐng)求;為0表示無(wú)請(qǐng)求n 中斷服務(wù)寄存器ISR 保存正在被8259A服務(wù)著的中斷狀態(tài) Di位為1表示IRi中斷正在服務(wù)中;為0表示沒有被服務(wù)n 中斷屏蔽寄存器IM

18、R 保存對(duì)中斷請(qǐng)求信號(hào)IR的屏蔽狀態(tài) Di位為1表示IRi中斷被屏蔽(禁止);為0表示允許讀寫控制邏輯讀寫控制邏輯 A0 RD WR CS功能 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 0 1 1 0 1寫入ICW1、OCW2和OCW3寫入ICW2ICW4和OCW1讀出IRR、ISR和查詢字讀出IMR數(shù)據(jù)總線高阻狀態(tài)數(shù)據(jù)總線高阻狀態(tài)A00:ICW1、OCW2、OCW3;A01:ICW2ICW4、OCW18259A的工作過(guò)程外部中斷請(qǐng)求外部中斷請(qǐng)求IRR接收,對(duì)應(yīng)位置接收,對(duì)應(yīng)位置1,鎖存。,鎖存。IMR對(duì)應(yīng)位對(duì)應(yīng)位0IMR對(duì)應(yīng)位對(duì)應(yīng)位1,屏蔽。,屏蔽。PR裁決裁決與與ISR中

19、對(duì)應(yīng)位比較中對(duì)應(yīng)位比較優(yōu)先級(jí)高優(yōu)先級(jí)高優(yōu)先級(jí)低優(yōu)先級(jí)低INT1IF0IF1CPU往往INTA發(fā)兩發(fā)兩個(gè)負(fù)脈沖個(gè)負(fù)脈沖第一個(gè)第一個(gè)負(fù)脈沖負(fù)脈沖第二個(gè)第二個(gè)負(fù)脈沖負(fù)脈沖1)IRR鎖存失效,不接收中斷鎖存失效,不接收中斷 請(qǐng)求信號(hào);請(qǐng)求信號(hào);2)ISR對(duì)應(yīng)位置對(duì)應(yīng)位置1;3)IRR相應(yīng)位清相應(yīng)位清0。1)8259A發(fā)中斷類型碼;發(fā)中斷類型碼;2)中斷自動(dòng)結(jié)束方式下,)中斷自動(dòng)結(jié)束方式下, ISR對(duì)應(yīng)位清對(duì)應(yīng)位清0。8259A的工作過(guò)程的工作過(guò)程8259A的編程結(jié)構(gòu)和工作原理的編程結(jié)構(gòu)和工作原理ISRPRIRR中斷處理部件中斷處理部件比較比較IRR失效失效相應(yīng)位置相應(yīng)位置1相應(yīng)位清相應(yīng)位清0* * *

20、 * * * * *1相應(yīng)位清相應(yīng)位清008259工作示意圖工作示意圖8.2 8259A的工作方式p 設(shè)置優(yōu)先級(jí)的方式p 屏蔽中斷源的方式p 結(jié)束中斷處理的方式p 連接系統(tǒng)總線的方式n 確定中斷類型碼的方式8259A可以通過(guò)各個(gè)可以通過(guò)各個(gè) IRi 引腳連接引腳連接8個(gè)不同的中斷個(gè)不同的中斷源;每個(gè)中斷源都需要指源;每個(gè)中斷源都需要指定有一個(gè)中斷類型碼定有一個(gè)中斷類型碼如何確定如何確定?CPU 響應(yīng)中斷并執(zhí)行理中斷服務(wù)響應(yīng)中斷并執(zhí)行理中斷服務(wù)程序后,中斷服務(wù)寄存器程序后,中斷服務(wù)寄存器 ISR的的相應(yīng)的位將置相應(yīng)的位將置1;ISR的對(duì)應(yīng)位復(fù)的對(duì)應(yīng)位復(fù)位,則表示一次中斷響應(yīng)的結(jié)束位,則表示一次中

21、斷響應(yīng)的結(jié)束如何使如何使ISR的對(duì)應(yīng)位復(fù)位的對(duì)應(yīng)位復(fù)位?CPU將在多個(gè)中斷請(qǐng)求中,將在多個(gè)中斷請(qǐng)求中,響應(yīng)優(yōu)先級(jí)最高的中斷響應(yīng)優(yōu)先級(jí)最高的中斷如何確定中斷的優(yōu)先級(jí)如何確定中斷的優(yōu)先級(jí)?并不是所有的中斷都可以向并不是所有的中斷都可以向CPU發(fā)送請(qǐng)求信號(hào)的;發(fā)送請(qǐng)求信號(hào)的;8259A能夠屏蔽那些不允許發(fā)送的能夠屏蔽那些不允許發(fā)送的中斷請(qǐng)求中斷請(qǐng)求如何屏蔽如何屏蔽?8259A 與數(shù)據(jù)總線之間可以與數(shù)據(jù)總線之間可以直接連接,也可以通過(guò)數(shù)據(jù)直接連接,也可以通過(guò)數(shù)據(jù)緩沖器連接緩沖器連接如何實(shí)現(xiàn)不同的連接方式如何實(shí)現(xiàn)不同的連接方式?1. 設(shè)置優(yōu)先級(jí)的方式設(shè)置優(yōu)先級(jí)的方式(1)普通全嵌套方式(固定優(yōu)先級(jí)方式)

22、普通全嵌套方式(固定優(yōu)先級(jí)方式)默認(rèn)方式,默認(rèn)方式,IR0最高,最高,IR7最低最低(2)特殊全嵌套方式)特殊全嵌套方式 基本同普通全嵌套方式,基本同普通全嵌套方式,所不同的是允許同級(jí)中斷嵌套(用于級(jí)聯(lián)主片)所不同的是允許同級(jí)中斷嵌套(用于級(jí)聯(lián)主片)(3)自動(dòng)循環(huán)方式)自動(dòng)循環(huán)方式 初始優(yōu)先級(jí)順序初始優(yōu)先級(jí)順序IR0最高,最高,IR7最低。最低。 當(dāng)其中一個(gè)中斷源受到服務(wù),當(dāng)其中一個(gè)中斷源受到服務(wù), 則它為最低優(yōu)先權(quán)。則它為最低優(yōu)先權(quán)。 同時(shí)置比它低一級(jí)中斷源為最高級(jí),同時(shí)置比它低一級(jí)中斷源為最高級(jí), 其它自動(dòng)循環(huán)排列。其它自動(dòng)循環(huán)排列。常用在系統(tǒng)中多個(gè)中斷源優(yōu)先級(jí)相等的場(chǎng)合常用在系統(tǒng)中多個(gè)中

23、斷源優(yōu)先級(jí)相等的場(chǎng)合(4)指定循環(huán)方式)指定循環(huán)方式 當(dāng)一中斷源通過(guò)編程指定為當(dāng)一中斷源通過(guò)編程指定為最低最低優(yōu)先權(quán),優(yōu)先權(quán), 則比它則比它低一級(jí)中斷源為最高級(jí)低一級(jí)中斷源為最高級(jí),其它順序排列。,其它順序排列。 如:指定如:指定IR3為最低,則優(yōu)先級(jí)順序?yàn)闉樽畹停瑒t優(yōu)先級(jí)順序?yàn)镮R4, IR5,IR6,IR7,IR0,IR1, IR2 , IR3 。2、屏蔽中斷源方式、屏蔽中斷源方式n 普通屏蔽方式通過(guò)OCW1設(shè)置將 IMR的 Di位置1,對(duì)應(yīng)的中斷 IRi將被屏蔽,該中斷請(qǐng)求將不能從8259A送到CPU如果將 IMR 的 Di位置0,則允許對(duì)應(yīng)的中斷產(chǎn)生n 特殊屏蔽方式允許發(fā)生低級(jí)的中斷嵌

24、套。通過(guò)OCW1設(shè)置將IMR的 Di位置1,中斷IRi被屏蔽(屏蔽同級(jí)中斷);同時(shí),ISR的的Di位將置位將置0,允許發(fā)生低級(jí)的中斷。在中斷處理程序中使用3、結(jié)束中斷處理的方式、結(jié)束中斷處理的方式n 中斷自動(dòng)結(jié)束方式中斷自動(dòng)結(jié)束方式 僅適用于只有單片8259A且多個(gè)中斷不會(huì)嵌套的場(chǎng)合, 系統(tǒng)一旦響應(yīng)中斷,CPU在發(fā)第二個(gè)INTA脈沖時(shí),就會(huì)使中斷響應(yīng)寄存器ISR中相應(yīng)位復(fù)位,雖然系統(tǒng)在進(jìn)行中斷處理,但對(duì)于8259A來(lái)講,ISR沒有相應(yīng)的指示,就象中斷處理結(jié)束,返回主程序之后一樣; CPU可以再次響應(yīng)任何級(jí)別的中斷請(qǐng)求。n 非指定的中斷結(jié)束方式非指定的中斷結(jié)束方式 通過(guò)OCW2設(shè)置,中斷結(jié)束時(shí)用

25、戶用指令送結(jié)束字,配合全嵌套優(yōu)先級(jí)方式使用 當(dāng)CPU用輸出指令往8259A發(fā)出普通中斷結(jié)束EOI命令時(shí),8259A就會(huì)清除ISR中當(dāng)前優(yōu)先級(jí)最高的中斷服務(wù)標(biāo)志n 指定的中斷結(jié)束方式指定的中斷結(jié)束方式 通過(guò)OCW2設(shè)置,用于非全嵌套優(yōu)先級(jí)方式 中斷結(jié)束時(shí)用戶用指令送特定的結(jié)束字,指明要清除ISR中的哪一位。n8259A判斷中斷服務(wù)寄存器判斷中斷服務(wù)寄存器ISR的狀態(tài):的狀態(tài):若某位為若某位為1,表示該中斷源正在得到服務(wù);一般情況下,將,表示該中斷源正在得到服務(wù);一般情況下,將不再響應(yīng)同級(jí)或低級(jí)的中斷(采用特殊屏蔽方式時(shí),可響不再響應(yīng)同級(jí)或低級(jí)的中斷(采用特殊屏蔽方式時(shí),可響應(yīng)低級(jí)別的中斷)應(yīng)低級(jí)

26、別的中斷)若某位為若某位為0,表示該中斷服務(wù)已結(jié)束,可響應(yīng)低級(jí)別中斷。,表示該中斷服務(wù)已結(jié)束,可響應(yīng)低級(jí)別中斷。n用指令向用指令向8259A送中斷結(jié)束字(送中斷結(jié)束字( ocw2-EOI ),可以使),可以使ISR的的某位清某位清0n該操作與該操作與CPU無(wú)關(guān)。無(wú)關(guān)。4、系統(tǒng)總線的連接方式、系統(tǒng)總線的連接方式n 緩沖方式緩沖方式 在多片8259A級(jí)聯(lián)級(jí)聯(lián)的大系統(tǒng)中,8259A通過(guò)外部總線驅(qū)動(dòng)器和數(shù)據(jù)總線相連,這就是緩沖方式緩沖方式。 在緩沖方式下,8259的輸出信號(hào)SP/EN端和總線驅(qū)動(dòng)器相連,輸出低電平作為緩沖器的啟動(dòng)信號(hào),用來(lái)啟動(dòng)總線驅(qū)動(dòng)器,在8259A與CPU之間進(jìn)行信息交換。n 非緩沖

27、方式非緩沖方式 當(dāng)系統(tǒng)中只有一片或幾片8259A芯片時(shí),可以將8259A直接與系統(tǒng)數(shù)據(jù)總線相連,這時(shí)8259A處于非緩沖方式下。 在這種方式下,8259A的SP/EN作為輸入端設(shè)置,主片應(yīng)接高電平,從片應(yīng)接低電平5、引入中斷請(qǐng)求的方式、引入中斷請(qǐng)求的方式n 邊沿觸發(fā)方式 中斷請(qǐng)求輸入端出現(xiàn)上升沿為有效中斷請(qǐng)求信號(hào)n 電平觸發(fā)方式 中斷請(qǐng)求端出現(xiàn)高電平為有效的中斷請(qǐng)求信號(hào) 中斷響應(yīng)后必須及時(shí)撤出高電平n 中斷查詢方式 中斷源仍往8259A發(fā)中斷請(qǐng)求,但8259A卻不使用INT信號(hào)向CPU發(fā)中斷請(qǐng)求信號(hào)。 CPU內(nèi)部的中斷允許標(biāo)志復(fù)位,所以CPU對(duì)INT引腳上出現(xiàn)的中斷請(qǐng)求呈禁止?fàn)顟B(tài)。 CPU 用

28、軟件查詢的方法來(lái)確定中斷源,從而實(shí)現(xiàn)對(duì)設(shè)備的中斷服務(wù) 中斷查詢方式既有中斷的特點(diǎn),又有查詢的特點(diǎn)W10-18259A 的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)有哪些部件組成?有哪些部件組成? 控制邏輯中斷服務(wù)寄存器ISR優(yōu)先權(quán)電路PR中斷請(qǐng)求寄存器IRR中斷屏蔽寄存器IMR讀寫控制邏輯級(jí)聯(lián)緩沖比較器數(shù)據(jù)總線緩沖器D0D7WRCSENSPA0CAS0CAS1CAS2INTAINTIR0IR1IR7 復(fù)習(xí) 8259A的工作方式p 設(shè)置優(yōu)先級(jí)的方式p 屏蔽中斷源的方式p 結(jié)束中斷處理的方式p 連接系統(tǒng)總線的方式n 確定中斷類型碼的方式CPU 響應(yīng)中斷并執(zhí)行理中斷服務(wù)響應(yīng)中斷并執(zhí)行理中斷服務(wù)程序后,中斷服務(wù)寄存器程序后,

29、中斷服務(wù)寄存器 ISR的的相應(yīng)的位將置相應(yīng)的位將置1;ISR的對(duì)應(yīng)位復(fù)的對(duì)應(yīng)位復(fù)位,則表示一次中斷響應(yīng)的結(jié)束位,則表示一次中斷響應(yīng)的結(jié)束如何使如何使ISR的對(duì)應(yīng)位復(fù)位的對(duì)應(yīng)位復(fù)位?1. 設(shè)置優(yōu)先級(jí)的方式有幾種?設(shè)置優(yōu)先級(jí)的方式有幾種?(1)普通全嵌套方式(固定優(yōu)先級(jí)方式)普通全嵌套方式(固定優(yōu)先級(jí)方式)默認(rèn)方式,默認(rèn)方式,IR0最高,最高,IR7最低最低(2)特殊全嵌套方式)特殊全嵌套方式 基本同普通全嵌套方式,基本同普通全嵌套方式,所不同的是允許同級(jí)中斷嵌套(用于級(jí)聯(lián)主片)所不同的是允許同級(jí)中斷嵌套(用于級(jí)聯(lián)主片)(3)自動(dòng)循環(huán)方式)自動(dòng)循環(huán)方式 初始優(yōu)先級(jí)順序初始優(yōu)先級(jí)順序IR0最高,最高

30、,IR7最低。最低。 當(dāng)其中一個(gè)中斷源受到服務(wù),當(dāng)其中一個(gè)中斷源受到服務(wù), 則它為最低優(yōu)先權(quán)。則它為最低優(yōu)先權(quán)。 同時(shí)置比它低一級(jí)中斷源為最高級(jí),同時(shí)置比它低一級(jí)中斷源為最高級(jí), 其它自動(dòng)循環(huán)排列。其它自動(dòng)循環(huán)排列。常用在系統(tǒng)中多個(gè)中斷源優(yōu)先級(jí)相等的場(chǎng)合常用在系統(tǒng)中多個(gè)中斷源優(yōu)先級(jí)相等的場(chǎng)合(4)指定循環(huán)方式)指定循環(huán)方式 當(dāng)一中斷源通過(guò)編程指定為當(dāng)一中斷源通過(guò)編程指定為最低最低優(yōu)先權(quán),優(yōu)先權(quán), 則比它則比它低一級(jí)中斷源為最高級(jí)低一級(jí)中斷源為最高級(jí),其它順序排列。,其它順序排列。 如:指定如:指定IR3為最低,則優(yōu)先級(jí)順序?yàn)闉樽畹?,則優(yōu)先級(jí)順序?yàn)镮R4, IR5,IR6,IR7,IR0,IR1

31、, IR2 , IR3 。2 系統(tǒng)總線的連接方式有幾種?系統(tǒng)總線的連接方式有幾種?n 緩沖方式緩沖方式 在多片8259A級(jí)聯(lián)級(jí)聯(lián)的大系統(tǒng)中,8259A通過(guò)外部總線驅(qū)動(dòng)器和數(shù)據(jù)總線相連,這就是緩沖方式緩沖方式。 在緩沖方式下,8259的輸出信號(hào)SP/EN端和總線驅(qū)動(dòng)器相連,輸出低電平作為緩沖器的啟動(dòng)信號(hào),用來(lái)啟動(dòng)總線驅(qū)動(dòng)器,在8259A與CPU之間進(jìn)行信息交換。n 非緩沖方式非緩沖方式 當(dāng)系統(tǒng)中只有一片或幾片8259A芯片時(shí),可以將8259A直接與系統(tǒng)數(shù)據(jù)總線相連,這時(shí)8259A處于非緩沖方式下。 在這種方式下,8259A的SP/EN作為輸入端設(shè)置,主片應(yīng)接高電平,從片應(yīng)接低電平3、引入中斷請(qǐng)求

32、的方式有幾種?、引入中斷請(qǐng)求的方式有幾種?n 邊沿觸發(fā)方式 中斷請(qǐng)求輸入端出現(xiàn)上升沿為有效中斷請(qǐng)求信號(hào)n 電平觸發(fā)方式 中斷請(qǐng)求端出現(xiàn)高電平為有效的中斷請(qǐng)求信號(hào) 中斷響應(yīng)后必須及時(shí)撤出高電平n 中斷查詢方式 CPU 用軟件查詢的方法來(lái)確定中斷源,從而實(shí)現(xiàn)對(duì)設(shè)備的中斷服務(wù) 中斷查詢方式既有中斷的特點(diǎn),又有查詢的特點(diǎn)屏蔽方式屏蔽方式正常屏蔽正常屏蔽特定屏蔽特定屏蔽請(qǐng)求方式請(qǐng)求方式電平觸發(fā)電平觸發(fā)邊沿觸發(fā)邊沿觸發(fā)中斷請(qǐng)求中斷請(qǐng)求IRRIR0IR7優(yōu)先級(jí)編碼器優(yōu)先級(jí)編碼器&INT1&中斷屏蔽中斷屏蔽IMRD0D7ISR編碼編碼比較器比較器最高優(yōu)最高優(yōu)先級(jí)先級(jí)IRINT嵌套方式嵌套方式完

33、全嵌套完全嵌套特殊全嵌套特殊全嵌套優(yōu)先級(jí)管理優(yōu)先級(jí)管理固定固定輪轉(zhuǎn)輪轉(zhuǎn)不指定不指定指定指定自動(dòng)結(jié)束方式時(shí)總是后,請(qǐng)求自動(dòng)結(jié)束方式時(shí)總是后,請(qǐng)求IR優(yōu)先優(yōu)先結(jié)束方式結(jié)束方式自動(dòng)自動(dòng)手工手工不指定不指定指定指定級(jí)聯(lián)方式級(jí)聯(lián)方式緩沖緩沖非緩沖非緩沖主、從片關(guān)系主、從片關(guān)系8259A8259A工作方式工作方式( (小結(jié)小結(jié)) ) 8259A的初始化命令字和初始化流程的初始化命令字和初始化流程n 8259A的初始化命令字 ICW 8259A在開始工作前必須寫入初始化命令字,ICW1寫入偶地址端口,其余寫入奇地址端口。 初始化命令字ICW最多可以有4個(gè):ICW1ICW4 必須按照以上順序依次寫入 其中 I

34、CW1 和 ICW2是必須的 ICW3和ICW4是否需要,由具體的工作方式?jīng)Q定ICW1芯片控制初始化命令字芯片控制初始化命令字1LTIMSNGLIC4D7D6D5D4D3D2D1D0表示可以任意表示可以任意為為1為為0都可以(建議為都可以(建議為0) 1只能為只能為1,作為標(biāo)志,作為標(biāo)志中斷觸發(fā)方式:中斷觸發(fā)方式:LTIM1,電平觸發(fā)方式,電平觸發(fā)方式LTIM0,邊沿觸發(fā)方式,邊沿觸發(fā)方式 規(guī)定單片或級(jí)連方式:規(guī)定單片或級(jí)連方式:SNGL1,單片方式,單片方式SNGL0,級(jí)連方式,級(jí)連方式是否寫入是否寫入ICW4IC41,要寫入,要寫入ICW4IC40,不寫入,不寫入ICW4,即,即ICW4規(guī)

35、定的位全為規(guī)定的位全為08086系統(tǒng)中總為0ICW1命令字設(shè)置舉例命令字設(shè)置舉例n 指令執(zhí)行后,對(duì)指令執(zhí)行后,對(duì)8259A設(shè)置了基本工作狀態(tài)設(shè)置了基本工作狀態(tài) MOV AL,11H OUT 20H,AL 說(shuō)出其具體意義及說(shuō)出其具體意義及ICW1中各位含義?中各位含義?00010001ICW1標(biāo)識(shí)上升沿觸發(fā)級(jí)聯(lián)方式寫入ICW42. ICW2中斷類型碼基數(shù)初始化命令字中斷類型碼基數(shù)初始化命令字o ICW2是設(shè)置是設(shè)置中斷號(hào)中斷號(hào)的初始化命令,必須寫到的初始化命令,必須寫到8259A的的奇地址端口。奇地址端口。o 按照規(guī)定:IR0的低3位是000;高5位為該8259中8個(gè)中斷源類型碼中的共有數(shù)碼;而

36、其他中斷源的低3位的值與IRi的(二進(jìn)制)編號(hào)相對(duì)應(yīng)o 通過(guò)ICW2確定了IR0的中斷類型碼,同時(shí)也就自然地確定了其他7個(gè)IRi對(duì)應(yīng)的中斷類型碼2. ICW2的格式和含義:的格式和含義:(D7D3),設(shè)置中斷號(hào)的高,設(shè)置中斷號(hào)的高5位;位;A0=1,寫入奇地址,寫入奇地址端口端口 取決于IR7IR02. ICW2中斷類型碼基數(shù)初始化命令字寫入奇地寫入奇地址端口址端口設(shè)置高設(shè)置高5位數(shù)值位數(shù)值低低3位取位取決于決于IR0-IR7ICW2中斷類型碼基數(shù)初始化命令字舉例n 一片8259A上的8個(gè)中斷源的8個(gè)中斷類型碼連續(xù)n 如:設(shè)置ICW240H,則8259A的IR0IR7,對(duì)應(yīng)的8個(gè)中斷類型碼為:

37、40H,41H,42H,43H,44H,45H,46H,47Hn 請(qǐng)思考:如果某8259A上IR4的中斷類型碼是0BCH;則該8259A的IR0IR7 ,對(duì)應(yīng)的8個(gè)中斷類型碼為? 0B8H到0BFH3. ICW3標(biāo)志主片標(biāo)志主片/從片初始化命令字從片初始化命令字o ICW3是在級(jí)聯(lián)方式下,標(biāo)志主/從片初始化才需要設(shè)置的初始化命令字。o 當(dāng)ICWl的D1 位為0時(shí),8259A在級(jí)聯(lián)方式下工作,必須設(shè)置ICW3o 主片和從片需要分別設(shè)置ICW3分別寫入主從片中分別寫入主從片中的奇地址端口的奇地址端口3. ICW3標(biāo)志主片標(biāo)志主片/從片初始化命令字從片初始化命令字主片格式:主片格式: D7D0對(duì)應(yīng)I

38、R7IR0的連接情況。若某引腳連有從片,則對(duì)應(yīng)位為1從片格式:從片格式: D7D3為0,不用。 D2D0指出從片INT連在主片的哪個(gè)中斷輸入端ICW3主主/從片標(biāo)志初始化命令字從片標(biāo)志初始化命令字n 主8259A通過(guò)級(jí)連線CAS2CAS0,依次向各個(gè)從8259A芯片輸送中斷請(qǐng)求源中優(yōu)先級(jí)最高的中斷源所對(duì)應(yīng)的標(biāo)識(shí)符n 每個(gè)從8259A拿到這個(gè)標(biāo)識(shí)符之后,與自己在初始化編程時(shí),由ICW3設(shè)置的標(biāo)識(shí)符進(jìn)行比較n 當(dāng)兩者相符合時(shí),則該從8259A芯片在第二個(gè)中斷響應(yīng)周期,向CPU提供由ICW2設(shè)置的8位中斷類型碼。 例:主片的 ICW300101011,表示IR5,IR3、IRl和IR0上連有從825

39、9A 思考:從片的 ICW300000100,則此從片的INT連至主片的哪個(gè)引腳上?3. ICW3標(biāo)志主片標(biāo)志主片/從片初始化命令字舉例從片初始化命令字舉例IR48259A的級(jí)聯(lián)n為了提高中斷源的接入能力,常將多片8259A級(jí)聯(lián)使用;一個(gè)主片,多個(gè)從片nCAS0CAS2:級(jí)聯(lián)方式下的主從片之間的聯(lián)系信號(hào);主片和所有從片的這3 條線互連如果8259A 為主片,則 3 個(gè)引腳均為輸出線如果8259A為從片,則為輸入線,主片以其“編碼”作為標(biāo)識(shí)碼聯(lián)系從片n當(dāng)某從片8259A 提出中斷請(qǐng)求并被響應(yīng)時(shí),主片將通過(guò)CAS0CAS2送出相應(yīng)的標(biāo)識(shí)碼給從片,通知該從片剛送到主片上的中斷請(qǐng)求已被響應(yīng)CAS0 I

40、R0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/EN CAS0INTA CAS1 CAS2INT IR0 IR1SP/EN IR7CAS0 IR0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/ENINTAINTR+5V8259級(jí)聯(lián)工作示意圖級(jí)聯(lián)工作示意圖4. ICW4方式控制初始化命令字o 一個(gè)多功能的初始化命令字;僅當(dāng)一個(gè)多功能的初始化命令字;僅當(dāng)ICWl的的D0位為位為1,才需要設(shè)置,才需要設(shè)置ICW4o 設(shè)置的工作方式包括:設(shè)置的工作方式包括:n 數(shù)據(jù)傳送方式數(shù)據(jù)傳送方式-緩沖與非緩沖緩沖與非緩

41、沖及及緩沖方式下緩沖方式下的主片的主片/從片標(biāo)志從片標(biāo)志n 級(jí)聯(lián)下的中斷嵌套管理方式級(jí)聯(lián)下的中斷嵌套管理方式n 中斷結(jié)束方式中斷結(jié)束方式4. ICW4方式控制初始化命令字方式控制初始化命令字緩沖方式下,指示本片為主片還是從片緩沖方式標(biāo)識(shí)非8位系統(tǒng)標(biāo)識(shí)特殊全嵌套方式標(biāo)識(shí)ICW4的標(biāo)識(shí)碼,總為0中斷自動(dòng)結(jié)束方式標(biāo)識(shí) 初始化流程:lICW1ICW4設(shè)置次序固定lICW1和ICW2必須設(shè)置,級(jí)聯(lián)方式下需要設(shè)置ICW3 ,非8位系統(tǒng)中需要設(shè)置ICW4l級(jí)聯(lián)方式下,均需設(shè)置ICW3必須設(shè)置 8259A的初始化流程的初始化流程設(shè)置設(shè)置ICW1設(shè)置設(shè)置ICW2是否為級(jí)聯(lián)方式是否為級(jí)聯(lián)方式? ?是否主片是否主片

42、? ?Y設(shè)置主片設(shè)置主片ICW3Y需設(shè)需設(shè)ICW4? ?Y設(shè)置設(shè)置ICW4N設(shè)置從片設(shè)置從片ICW3NN是否級(jí)聯(lián)是否級(jí)聯(lián)請(qǐng)求信號(hào)格式請(qǐng)求信號(hào)格式是否用是否用ICW4設(shè)置中斷類型號(hào)設(shè)置中斷類型號(hào)是否為是否為16位系統(tǒng)位系統(tǒng)是否特殊全嵌套方式是否特殊全嵌套方式是否緩沖方式是否緩沖方式是否中斷自動(dòng)結(jié)束方式是否中斷自動(dòng)結(jié)束方式8259A的初始化流程圖的初始化流程圖寫寫ICW1,A0=0,D4=1寫寫ICW2,A0=1A0=1A0=1例:假設(shè)8259A端口地址為80H、81HMOV AL,13HOUT80H,ALMOV AL,18HOUT81H,ALMOV AL,0DHOUT81H,AL;設(shè)置ICW1,

43、D4標(biāo)志位為1,D3指出中斷請(qǐng)求信號(hào)采用邊沿觸發(fā)方式,D1系統(tǒng)只有一片8259A,D0需要設(shè)置ICW4;設(shè)置ICW2,指定中斷號(hào)的高5位為00011B,低三位為0;設(shè)置ICW4,D4指出不用特殊全嵌套方式、D3使用緩沖方式、D0非8位系統(tǒng)、D1不用中斷自動(dòng)結(jié)束方式8259A的初始化舉例的初始化舉例自學(xué)教材自學(xué)教材P246并講解并講解8259A的操作命令字的操作命令字n 8259A工作期間,可以隨時(shí)接受操作命令字工作期間,可以隨時(shí)接受操作命令字OCWn OCW共有共有3個(gè):個(gè):OCW1OCW3n 寫入時(shí)沒有順序要求,需要哪個(gè)寫入時(shí)沒有順序要求,需要哪個(gè)OCW就寫入那個(gè)就寫入那個(gè)OCWn OCW1

44、必須寫入必須寫入奇地址奇地址端口,端口,OCW2、OCW3必須寫入必須寫入偶偶地址地址端口端口n ICW1必須寫入必須寫入偶地址偶地址,其余三個(gè)其余三個(gè)初始化命令字寫到初始化命令字寫到奇地奇地址。址。OCW1中斷屏蔽操作命令字屏蔽命令字寫入中斷屏蔽寄存器IMR,各位互相獨(dú)立各位互相獨(dú)立Mi 對(duì)應(yīng)IRi,為1將禁止IRi中斷;為0則允許IRi中斷例例:設(shè)OCW106H,則表示IR1,IR2 兩 個(gè)引腳上的中斷申請(qǐng)被屏蔽,其他的中斷申請(qǐng) (IR0,IR3IR7)則得到允許。8259A編程指令為:MOV AL,00000110B ;OCW1屏蔽字OUT 21H,AL ;屏蔽字寫入奇地址口 ;的 OC

45、W1寄存器OCW2的格式和含義:的格式和含義:設(shè)置優(yōu)先級(jí)循環(huán)方式和中設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式斷結(jié)束方式0優(yōu)先級(jí)循環(huán)方式標(biāo)識(shí)標(biāo)識(shí)位中斷自動(dòng)結(jié)束方式用于中斷結(jié)束指令和循環(huán)方式命令2. OCW2優(yōu)先級(jí)管理方式命令字優(yōu)先級(jí)管理方式命令字2. OCW2優(yōu)先級(jí)管理方式命令字優(yōu)先級(jí)管理方式命令字小結(jié)小結(jié)n R、SL、EOI三位的不同組合,可以組成7種不同的操作命令 n R用于表示優(yōu)先級(jí)是否采用循環(huán)方式; 1-循環(huán) 0-非循環(huán)n SL是否需要使用L2、L1、L0來(lái)明確中斷源; 1:L2L0有意義 0:L2L0不起作用n EOI用于指示OCW2是否作為中斷結(jié)束命令。 當(dāng)EOI為1時(shí),當(dāng)前中斷服務(wù)寄存器中

46、的對(duì)應(yīng)位ISn復(fù)位RSLEOI 功能功能000結(jié)束優(yōu)先級(jí)循環(huán)方式100優(yōu)先級(jí)自動(dòng)循環(huán)方式010OCW2無(wú)意義110特殊優(yōu)先級(jí)循環(huán)方式,8259A 按照 L0、L1、L2 的值確定一個(gè)級(jí)別最高的優(yōu)先級(jí),比如, 當(dāng) L2L1L0=011 時(shí) ,R3為最高優(yōu)先級(jí), 系統(tǒng)優(yōu)先級(jí)次序?yàn)?IR3、IR4、IR5、IR6、IR7、IR0、IR1、IR2 , 系統(tǒng)工作在優(yōu)先級(jí)特殊循環(huán)方式。001一般中斷結(jié)束方式101發(fā)中斷結(jié)束命令,并仍用優(yōu)先級(jí)循環(huán)方式,但當(dāng)前的優(yōu)先級(jí)次序左移一位011特殊中斷結(jié)束命令111發(fā)中斷結(jié)束命令,并用特殊優(yōu)先級(jí)循環(huán)方式, 此時(shí)OCW2 使對(duì)應(yīng)的ISn 位清除 , L2、L1、L0 所

47、指定的值為當(dāng)前結(jié)束的IRn 。且L2、L1、L0所指定的中斷源優(yōu)先級(jí)變?yōu)樽畹?此時(shí)OCW2作為中斷自動(dòng)結(jié)束命令R、SL、EOI 組合成的7種控制命令 3. OCW3特殊屏蔽與查詢方式命令字n管理特殊屏蔽方式SMM(如開啟ESMM與解除);進(jìn)而實(shí)現(xiàn)中斷的特殊屏蔽n將8259A的工作狀態(tài)設(shè)置為查詢方式位P(P=1);進(jìn)而讀取IRR、ISR、IMR寄存器的當(dāng)前狀態(tài)數(shù)據(jù)nRR為讀寄存器位 讀取狀態(tài)字讀取狀態(tài)字n CPU可隨時(shí)讀出IRR、ISR、IMR和查詢字n A0為低(偶地址)時(shí) 由OCW3中RR和RIS位編碼決定讀取的是IRR或ISR RR=1,RIS=0 讀 IRR RR=1,RIS=1 讀 I

48、SR 由OCW3中P位決定讀取的是查詢字,查詢字可反映8259A是否有中斷請(qǐng)求,及哪個(gè)引腳上有中斷請(qǐng)求n A0為高(奇地址)時(shí),讀取的是IMR查詢字查詢字IW2W1W0D7D6D5D4D3D2D1D0中斷位中斷位I位為位為1,有外設(shè)請(qǐng)求中斷有外設(shè)請(qǐng)求中斷W2W0的編碼的編碼當(dāng)前中斷請(qǐng)求的最當(dāng)前中斷請(qǐng)求的最高優(yōu)先級(jí)高優(yōu)先級(jí) 讀取讀取IRRIRR、ISRISR、查詢字:、查詢字: P RR RIS功能 應(yīng)用 0 1 0讀取IRR內(nèi)容OUT 20H,0AHIN AL,21H 0 1 1讀取ISR內(nèi)容OUT 20H,0BHIN AL,21H 0 0 *不讀取任何寄存器內(nèi)容 1 * *讀取查詢字信息OU

49、T 20H,0CHIN AL,21H4. ICW和和 OCW的端口地址區(qū)分:的端口地址區(qū)分:u偶地址端口:ICW1、OCW2、OCW3D4=1,ICW1D4=0,OCW2、OCW3D3=0,ICW2D3=1,ICW3u奇地址端口:ICW2、 ICW3、 ICW4、 OCW1lICW2、 ICW3、 ICW4總是跟在ICW1的后面寫入lOCW1不會(huì)緊跟在ICW1的后面l是否需要ICW3、 ICW4 ,由決定ICW1說(shuō)明:初始化命令字由初始化程序一次性寫入;操作命令字可由任何程序在任何時(shí)候多次寫入5. 關(guān)于優(yōu)先級(jí)設(shè)置和中斷結(jié)束命令的小結(jié)歸納u關(guān)于優(yōu)先級(jí)的設(shè)置方法l全嵌套方式:默認(rèn)工作方式,IR0優(yōu)

50、先級(jí)最高l特殊全嵌套方式:用ICW4設(shè)置,將D4位置1, IR0優(yōu)先級(jí)最高l自動(dòng)循環(huán)方式:用OCW2設(shè)置(80H),其中R=1,SL=0,EOI=0, IR0優(yōu)先級(jí)最高l指定循環(huán)方式:用OCW2設(shè)置,其中R=1,SL=1,EOI=0, 最低優(yōu)先級(jí)對(duì)應(yīng)的IRn由L2、L1、L0給出u關(guān)于中斷結(jié)束方式的設(shè)置方法l中斷自動(dòng)結(jié)束方式:用ICW4設(shè)置,將D1位置1l非指定的中斷結(jié)束方式:用OCW2設(shè)置,其中R=0,SL=0,EOI=1,適應(yīng)于全嵌套方式l指定的中斷結(jié)束方式:用OCW2設(shè)置,其中R=0,SL=1,EOI=1,所指定的ISn由L2、L1、L0給出u優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式一起設(shè)置的方法l

51、自動(dòng)循環(huán)方式和非指定的中斷結(jié)束方式:用OCW2設(shè)置,其中R=1,SL=0,EOI=1l指定循環(huán)方式和指定中斷結(jié)束方式:用OCW2設(shè)置,其中R=1,SL=1,EOI=1,所指定的ISn由L2、L1、L0給出,見216頁(yè)ICW14及OCW13完成功能小結(jié)ICW14設(shè)置必須按次序設(shè)置必須按次序ICW1 (A0=0) : ICW1主要用于設(shè)置工作方式,完成功能:規(guī)定了單片主要用于設(shè)置工作方式,完成功能:規(guī)定了單片多片、觸發(fā)方式及是否使用多片、觸發(fā)方式及是否使用ICW4;ICW2 (A0=1)設(shè)置中斷類型碼;)設(shè)置中斷類型碼;ICW3 (A0=1)級(jí)聯(lián)方式時(shí)用于設(shè)置主從片;)級(jí)聯(lián)方式時(shí)用于設(shè)置主從片;I

52、CW4 (A0=1) 設(shè)置設(shè)置8259A的工作方式,總線連接、結(jié)束方式及嵌套。的工作方式,總線連接、結(jié)束方式及嵌套。OCW1:A0=1; OCW2,OCW3 A0=0,設(shè)置次序沒有規(guī)定先后。,設(shè)置次序沒有規(guī)定先后。OCW1 用于設(shè)置中斷屏蔽操作命令字;用于設(shè)置中斷屏蔽操作命令字;OCW2用于設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式(用于設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方式(D4D3=00) ;OCW3的功能有三個(gè)方面:設(shè)置和撤消特殊屏蔽方式、設(shè)置中斷查詢方式的功能有三個(gè)方面:設(shè)置和撤消特殊屏蔽方式、設(shè)置中斷查詢方式以及設(shè)置對(duì)以及設(shè)置對(duì)8259A內(nèi)部寄存器的讀出(內(nèi)部寄存器的讀出(D4D3=01) 。n7.

53、5 8259A使用舉例使用舉例(自學(xué)自學(xué)P250)1. 中斷全嵌套方式的例子 :u初始化后,若不寫入OCW,則處于全嵌套工作方式,此時(shí)只響應(yīng)更高級(jí)別的中斷請(qǐng)求u工作條件:u由于每響應(yīng)一個(gè)中斷,會(huì)自動(dòng)關(guān)閉中斷,即IF=0,因此需要在中斷處理程序中再次打開中斷,才會(huì)出現(xiàn)中斷嵌套u(yù)中斷處理程序結(jié)束時(shí),應(yīng)執(zhí)行中斷結(jié)束命令(見 ),以清除對(duì)應(yīng)的ISn位不響應(yīng)中斷,等待立即響應(yīng)關(guān)于如何使用中斷結(jié)束命令的例子關(guān)于如何使用中斷結(jié)束命令的例子 0100000001 0011 00系統(tǒng)全嵌套方式工作的條件條件系統(tǒng)全嵌套方式工作的條件條件n 主程序必須執(zhí)行開中斷指令 , 使IF為1, 才有可能響應(yīng)中斷。n 每當(dāng)進(jìn)入一個(gè)中斷處理程序時(shí) , 系統(tǒng)會(huì)自動(dòng)關(guān)中斷 , 所以 , 只有中斷處理程序中再次開中斷 , 才有可能被較高級(jí)的中斷所嵌套。n 每個(gè)中斷處理程序結(jié)束時(shí) , 必須執(zhí)行中斷結(jié)束命令 , 清除對(duì)應(yīng)的ISn位 , 才能返回?cái)帱c(diǎn) CLIMOVAL,68HOUT80H,ALIN AL,81HORAL,10HOUT81H,ALSTICLI3. 關(guān)于特殊屏蔽方式的例子 (自學(xué));為了下面設(shè)置命令,先關(guān)中斷;用OCW3設(shè)置特殊屏蔽方式;讀取系統(tǒng)原

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論