版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微機(jī)原理與應(yīng)用教學(xué)資料第七章-中斷(課件)微機(jī)原理與應(yīng)用教學(xué)資料第七章-中斷(課件)27-1 概述實(shí)時(shí)操作 外設(shè) CPU, 再CPU 外設(shè)例:外設(shè)鍵盤(pán),原為空閑狀態(tài),現(xiàn)開(kāi)始工作,CPU如何知道鍵盤(pán)何時(shí)工作呢??jī)煞N方法:a.每隔一段時(shí)間采樣b.中斷請(qǐng)求 顯然,中斷請(qǐng)求的方法較合理中斷定義:當(dāng)有外部數(shù)據(jù)輸入或內(nèi)部異常時(shí),發(fā)送請(qǐng)求給CPU,CPU暫時(shí)停止正在運(yùn)行的程序,處理中斷結(jié)束后,返回繼續(xù)運(yùn)行先前的程序。 兩個(gè)最重要的特點(diǎn):可返回性,現(xiàn)場(chǎng)保護(hù)發(fā)送請(qǐng)求控制信號(hào)斷點(diǎn)保護(hù)電氣學(xué)院學(xué)習(xí)部資料庫(kù)47-1 概述實(shí)時(shí)操作 外設(shè) 31、中斷源:引起程序中斷的事件,內(nèi)部中斷、外部中斷2、中斷響應(yīng):對(duì)外部中斷而言,
2、INTA對(duì)INTR的響應(yīng)3、中斷向量,中斷向量表 中斷向量: 中斷服務(wù)子程序的入口地址(邏輯地址)中斷類(lèi)型碼:中斷向量的編號(hào)。0-255,與中斷向量是一一對(duì)應(yīng)的 中斷向量表:內(nèi)存中開(kāi)出的一定區(qū)域,用來(lái)存儲(chǔ)中斷向量一、中斷概念CS :IP電氣學(xué)院學(xué)習(xí)部資料庫(kù)51、中斷源:引起程序中斷的事件,內(nèi)部中斷、外部中斷一、中斷41個(gè)中斷向量必須用4個(gè)存儲(chǔ)單元來(lái)存儲(chǔ)(1個(gè)地址CS :IP,分別有16位,而存儲(chǔ)單元內(nèi)容8位,所以需要4個(gè)) 地址低高 如右圖所示存放CPU在內(nèi)存中開(kāi)出1024個(gè)字節(jié)來(lái)存儲(chǔ)中斷向量,即00000H003FFH (中斷向量表,內(nèi)存中0段,1K字節(jié))IP 低8IP 高8CS 低8CS
3、高8n n+1 n+2 n+3電氣學(xué)院學(xué)習(xí)部資料庫(kù)61個(gè)中斷向量必須用4個(gè)存儲(chǔ)單元來(lái)存儲(chǔ)IP 低8IP 5例1:中斷類(lèi)型號(hào) 中斷向量地址 中斷向量 4 10H13H 32H C8HCBH例2:中斷類(lèi)型號(hào)64D=40H,中斷操作過(guò)程:中斷向量地址64D*4=256D=00100H。若中斷向量中內(nèi)容如圖 則CS :IP=1312 :1110轉(zhuǎn)向中斷服務(wù)程序中斷返回到INT 40H指令的下一條指令10H11H12H13H00100H 00101H 00102H 00103H內(nèi)容電氣學(xué)院學(xué)習(xí)部資料庫(kù)7例1:中斷類(lèi)型號(hào) 中斷向量地址 中斷向量6各個(gè)外設(shè)的中斷服務(wù)子程序的入口地址集中在一個(gè)表(中斷向量表)
4、中,CPU響應(yīng)中斷時(shí),根據(jù)中斷源提供的中斷類(lèi)型號(hào) i, i4在中斷向量表查找對(duì)應(yīng)的中斷服務(wù)子程序 i 的入口地址,內(nèi)容裝入CS、IP,轉(zhuǎn)而執(zhí)行中斷服務(wù)子程序 i電氣學(xué)院學(xué)習(xí)部資料庫(kù)8電氣學(xué)院學(xué)習(xí)部資料庫(kù)74、中斷優(yōu)先級(jí):當(dāng)同時(shí)有多個(gè)中斷請(qǐng)求,先響應(yīng)優(yōu)先級(jí)高的當(dāng)一個(gè)中斷服務(wù)程序正在執(zhí)行時(shí),又一個(gè)中斷源申請(qǐng)中斷:高不睬低,停低轉(zhuǎn)高 中斷嵌套5、中斷屏蔽中斷源硬件屏蔽CPU的IFCPU電氣學(xué)院學(xué)習(xí)部資料庫(kù)94、中斷優(yōu)先級(jí):中斷源硬件屏蔽CPU的IFCPU電氣學(xué)院學(xué)8二、中斷分類(lèi)1、內(nèi)部中斷(軟件中斷)中斷指令 INT n n中斷類(lèi)型碼 n=0255由CPU的運(yùn)算錯(cuò)誤引起的: a.除法錯(cuò)中斷: INT
5、 0(除數(shù)為零或商超過(guò)范圍,自動(dòng)產(chǎn)生中斷) b.溢出中斷: INT 4 (當(dāng)OF=1,且在程序中有INTO指令,產(chǎn)生中斷)由調(diào)試程序debug設(shè)置的中斷 a.單步中斷:INT 1 (當(dāng)TF=1,每執(zhí)行完一條指令,產(chǎn)生中斷) b.斷點(diǎn)中斷:INT 3 (利用G命令設(shè)置斷點(diǎn),當(dāng)程序執(zhí)行到斷點(diǎn),產(chǎn)生中斷)電氣學(xué)院學(xué)習(xí)部資料庫(kù)10二、中斷分類(lèi)電氣學(xué)院學(xué)習(xí)部資料庫(kù)9特點(diǎn):由指令產(chǎn)生,中斷類(lèi)型碼包括在指令中,不需要取中斷類(lèi)型碼是可預(yù)見(jiàn)性的,是人為預(yù)先安排,中斷處理子程序與主程序間有數(shù)據(jù)的傳送。而硬件中斷,兩者之間則是相互獨(dú)立電氣學(xué)院學(xué)習(xí)部資料庫(kù)11特點(diǎn):電氣學(xué)院學(xué)習(xí)部資料庫(kù)102、外部中斷(硬件中斷)不可
6、屏蔽中斷NMI a. 上升沿觸發(fā) b. CPU必須予以響應(yīng),不能用IF屏蔽 c. INT 2,中斷類(lèi)型碼為2, 中斷向量固定存放于00008H 0000BH中 d. 用于發(fā)生重大故障時(shí)申請(qǐng)中斷可屏蔽中斷INTR a. 電平觸發(fā) b. 是否響應(yīng),與IF有關(guān) c. 中斷類(lèi)型號(hào)由硬件連線(xiàn)決定 d.一般事件申請(qǐng)中斷電氣學(xué)院學(xué)習(xí)部資料庫(kù)122、外部中斷(硬件中斷)電氣學(xué)院學(xué)習(xí)部資料庫(kù)11CPU內(nèi)部規(guī)定的優(yōu)先級(jí)別: 內(nèi)部中斷(除法錯(cuò),溢出,INT n)NMIINTRTF單步中斷 高 低電氣學(xué)院學(xué)習(xí)部資料庫(kù)13CPU內(nèi)部規(guī)定的優(yōu)先級(jí)別:電氣學(xué)院學(xué)習(xí)部資料庫(kù)127-2 中斷處理過(guò)程一、CPU響應(yīng)中斷的過(guò)程參見(jiàn)
7、課本P268 流程圖CPU自動(dòng)完成的工作STEP 1STEP 2STEP 3STEP 4STEP 5STEP 6STEP 7握手信號(hào) 取中斷類(lèi)型碼FLAGS入棧清除IF 、TFCS入棧IP入棧中斷向量偏移地址裝入IP中斷向量段地址裝入CSINTR才有CS、IP為被中斷程序的下一條指令的地址電氣學(xué)院學(xué)習(xí)部資料庫(kù)147-2 中斷處理過(guò)程一、CPU響應(yīng)中斷的過(guò)程STEP 113內(nèi)部中斷、NMI中斷、單步中斷,均無(wú)須取中斷類(lèi)型碼。 事先由系統(tǒng)約定好了斷點(diǎn)保護(hù)(可返回)由CPU自動(dòng)完成;現(xiàn)場(chǎng)保護(hù)由編程完成 INT轉(zhuǎn)入中斷子程序和CALL調(diào)用子程序比較,兩者不同處:多了標(biāo)志(FLAGS)入棧 CPU自動(dòng)關(guān)
8、中斷。若想在中斷響應(yīng)過(guò)程中,允許中斷嵌套,必須在子程序中開(kāi)中斷(STI)電氣學(xué)院學(xué)習(xí)部資料庫(kù)15內(nèi)部中斷、NMI中斷、單步中斷,均無(wú)須取中斷類(lèi)型碼。電14二、中斷處理子程序開(kāi)中斷:響應(yīng)中斷時(shí),CPU已自動(dòng)關(guān)中斷,為允許中斷嵌套,需重開(kāi)中斷關(guān)中斷:恢復(fù)現(xiàn)場(chǎng)時(shí)不允許被中斷執(zhí)行IRET指令:從堆棧中依次彈出程序斷點(diǎn),送到IP和CS寄存器中彈出PSW的內(nèi)容(恢復(fù)標(biāo)志、開(kāi)中斷);按CS:IP的值使CPU返回?cái)帱c(diǎn),繼續(xù)執(zhí)行原來(lái)被中斷的程序。保護(hù)中斷現(xiàn)場(chǎng)PUSH 開(kāi)中斷 中斷處理具體內(nèi)容關(guān)中斷恢復(fù)中斷現(xiàn)場(chǎng)POP中斷返回指令I(lǐng)RET電氣學(xué)院學(xué)習(xí)部資料庫(kù)16二、中斷處理子程序保護(hù)中斷現(xiàn)場(chǎng)PUSH 開(kāi)中斷 中斷處
9、理151、 中斷類(lèi)型碼的獲取除法錯(cuò)、單步、NMI、斷點(diǎn)中斷、溢出:由CPU自動(dòng)提供,分別為04軟中斷指令 INT n : n中斷類(lèi)型號(hào),由指令提供外部中斷INTR :中斷類(lèi)型號(hào)由可編程控制器8259A獲得2、 中斷向量的設(shè)置預(yù)置:AL=中斷類(lèi)型號(hào) DS:DX=中斷服務(wù)程序入口地址 AH=25H執(zhí)行:INT 21H 三、中斷向量電氣學(xué)院學(xué)習(xí)部資料庫(kù)171、 中斷類(lèi)型碼的獲取三、中斷向量電氣學(xué)院學(xué)習(xí)部資料庫(kù)16四、中斷時(shí)序(對(duì)可屏蔽中斷而言)INTRINTACPU AD0AD7INTINTA8259D0D7 INTAT1 T2 T3T4T1 T2T3第一個(gè)INTA周期T4中斷類(lèi)型號(hào)nD0D7電氣學(xué)
10、院學(xué)習(xí)部資料庫(kù)18四、中斷時(shí)序(對(duì)可屏蔽中斷而言)INTRINTINTAT177-3 中斷優(yōu)先級(jí)和中斷嵌套一、可屏蔽中斷INTR優(yōu)先級(jí)的設(shè)定軟件查詢(xún):在中斷處理子程序中安排查詢(xún),查詢(xún)程序的次序,決定了優(yōu)先級(jí)的高低。見(jiàn)后頁(yè) 最先查詢(xún)的優(yōu)先級(jí)最高簡(jiǎn)單硬件:菊花鏈法,越靠近CPU的優(yōu)先級(jí)越高。 圖7-8專(zhuān)用硬件:8259A,可編程的電氣學(xué)院學(xué)習(xí)部資料庫(kù)197-3 中斷優(yōu)先級(jí)和中斷嵌套一、可屏蔽中斷INTR優(yōu)先級(jí)18查詢(xún)方式INTR0中斷程序輸入狀態(tài)D0=1?D1=1?INTR1中斷程序INTR0INTR1INTRn INTR0CS+ INTR CPU D0 D1INTR174LS244電氣學(xué)院學(xué)習(xí)部
11、資料庫(kù)20查詢(xún)方式INTR0中斷程序輸入狀態(tài)D0=1?D1=1?I19菊花鏈電路+INTAINTR中斷回答中斷請(qǐng)求電氣學(xué)院學(xué)習(xí)部資料庫(kù)21菊花鏈電路+INTAINTR中斷回答中斷請(qǐng)求電氣學(xué)院學(xué)20二、中斷嵌套 圖7-10同時(shí)申請(qǐng)中斷時(shí),響應(yīng)高優(yōu)先級(jí)的,正在執(zhí)行中斷時(shí),高不睬低,停低轉(zhuǎn)高中斷程序在保護(hù)現(xiàn)場(chǎng)后,須開(kāi)中斷,才能實(shí)現(xiàn)嵌套。中斷服務(wù)結(jié)束后,須用EOI指令清除8259A中ISR的對(duì)應(yīng)位,使低級(jí)中斷申請(qǐng)得以響應(yīng),然后緊接著須有IRET,返回?cái)帱c(diǎn)電氣學(xué)院學(xué)習(xí)部資料庫(kù)22二、中斷嵌套 圖7-10電氣學(xué)院學(xué)習(xí)部資料庫(kù)217-4 中斷優(yōu)先級(jí)控制器8259A8259A特點(diǎn):一片8259A可管理8個(gè)中斷
12、源,通過(guò)級(jí)連,可用9片組成64級(jí)主從式中斷管理系統(tǒng)。 可編程,使用靈活每一個(gè)中斷可通過(guò)編程單獨(dú)屏蔽或允許中斷可提供中斷類(lèi)型號(hào)給CPU電氣學(xué)院學(xué)習(xí)部資料庫(kù)237-4 中斷優(yōu)先級(jí)控制器8259A8259A特點(diǎn):電氣22一、8259A引腿信號(hào)1、CS :片選。通過(guò)譯碼電路與CPU高位地址總線(xiàn)相連,即與譯碼電路的輸出端相連2、A0:片內(nèi)選址。連CPU低位地址線(xiàn),用于選擇8259A的兩個(gè)端口3、RD、WR:連CPU的RD、WR (最小模式) 連8288總線(xiàn)控制器(最大模式)4、D7D0:數(shù)據(jù)總線(xiàn)5、INT:連CPU的INTR端,向CPU發(fā)出中斷請(qǐng)求信號(hào)電氣學(xué)院學(xué)習(xí)部資料庫(kù)24一、8259A引腿信號(hào)電氣學(xué)
13、院學(xué)習(xí)部資料庫(kù)236、INTA :連CPU的INTA(最小模式), CPU給8259A的中斷響應(yīng)信號(hào),兩個(gè)負(fù)脈沖 響應(yīng)中斷 讀取中斷類(lèi)型號(hào) 連8288總線(xiàn)控制器(最大模式)7、IR7-IR0: 連外設(shè)的中斷請(qǐng)求信號(hào)線(xiàn), 中斷級(jí)聯(lián)時(shí),連從片INT端8、CAS2CAS0 與級(jí)聯(lián)有關(guān) SP/EN 級(jí)聯(lián): CAS2CAS0 主片:輸出 從片:輸入 SP/EN 主片:SP=1 從片:SP=0 單片8259A時(shí),接高電平電氣學(xué)院學(xué)習(xí)部資料庫(kù)256、INTA :連CPU的INTA(最小模式),電氣學(xué)院24二、8259A編程結(jié)構(gòu)及工作原理數(shù)據(jù)總線(xiàn)緩沖器:寫(xiě)入控制字,讀出8259A狀態(tài),送出中斷類(lèi)型號(hào),接D0-
14、D7 請(qǐng)求IRR:鎖存外部中斷請(qǐng)求信號(hào)IR0IR7,有中斷請(qǐng)求時(shí),對(duì)應(yīng)位置1,中斷請(qǐng)求被響應(yīng)時(shí),對(duì)應(yīng)位復(fù)位屏蔽IMR:設(shè)置是否屏蔽IRR中相應(yīng)位的中斷請(qǐng)求,置1則屏蔽優(yōu)先級(jí)判別PR:管理、識(shí)別中斷源的優(yōu)先級(jí)別。完全嵌套方式下,IR0最高中斷服務(wù)寄存器ISR:存放正在處理中的所有中斷請(qǐng)求信號(hào)。中斷嵌套時(shí),多位被置1,為以后的中斷優(yōu)先級(jí)裁決提供依據(jù) IRR IMR對(duì)其進(jìn)行過(guò)濾 PR比較優(yōu)先級(jí) ISR外設(shè)中斷請(qǐng)求電氣學(xué)院學(xué)習(xí)部資料庫(kù)26二、8259A編程結(jié)構(gòu)及工作原理外設(shè)中斷請(qǐng)求電氣學(xué)院學(xué)習(xí)25數(shù)據(jù) 緩沖器讀/寫(xiě) 控制 電路級(jí)聯(lián) 緩沖器/比較器中斷服務(wù)寄存器ISR優(yōu)先級(jí) 裁決器 PR中斷請(qǐng)求寄存器I
15、RR控 制 電 路中 斷 屏 蔽 寄 存 器 IMR INTD7D0A0CAS0CAS1CAS2IR08259A內(nèi)部總線(xiàn)INTACERDWRIR1IR6IR7SP/EN電氣學(xué)院學(xué)習(xí)部資料庫(kù)27讀/寫(xiě) 控制 電路級(jí)聯(lián) 緩沖器/比較器控 制 26控制電路控制全過(guò)程:根據(jù)IRR的置位情況和IMR的設(shè)置情況,通過(guò)PR判定優(yōu)先級(jí),選出需處理的中斷請(qǐng)求信號(hào),送入ISR向CPU發(fā)送INT中斷申請(qǐng) INTR接收CPU發(fā)出的第一個(gè)響應(yīng)INTA負(fù)脈沖,ISR相應(yīng)位置1,IRR相應(yīng)位清0 INTA第二個(gè)負(fù)脈沖時(shí),向CPU送出中斷類(lèi)型碼,使CPU轉(zhuǎn)入中斷程序,最后將ISR相應(yīng)位清0電氣學(xué)院學(xué)習(xí)部資料庫(kù)28控制電路控制
16、全過(guò)程:電氣學(xué)院學(xué)習(xí)部資料庫(kù)277-5 8259A的編程方法兩類(lèi)命令字:初始化命令字ICW 操作命令字OCW初始化命令字ICW1ICW4: 由初始化程序設(shè)置的 初始化命令字一經(jīng)設(shè)定,在系統(tǒng)工作過(guò)程中將不再改變 初始化命令字必須順序填寫(xiě) ICW1、ICW2必須預(yù)置,ICW3、ICW4不一定,是否設(shè)置體現(xiàn)在ICW1電氣學(xué)院學(xué)習(xí)部資料庫(kù)297-5 8259A的編程方法兩類(lèi)命令字:初始化命令字IC28操作命令字OCW1OCW3:由應(yīng)用程序設(shè)定,用來(lái)對(duì)中斷處理過(guò)程進(jìn)行控制在系統(tǒng)運(yùn)行過(guò)程中,操作命令字可以重新設(shè)置設(shè)置OCW,次序上沒(méi)有嚴(yán)格要求 (OCW2命令字定義中斷方式時(shí),通常放在中斷服務(wù)子程序中)電氣
17、學(xué)院學(xué)習(xí)部資料庫(kù)30操作命令字OCW1OCW3:電氣學(xué)院學(xué)習(xí)部資料庫(kù)29一、初始化命令字ICWICW1芯片控制初始化命令字 A0 D7 D0標(biāo)志位1:電平觸發(fā) 0:上升沿觸發(fā) 1:?jiǎn)渭?jí)使用 0:級(jí)聯(lián) 1:需要設(shè)置ICW4 0:不需要設(shè)置ICW4 IC4SNGL0LTIM10電氣學(xué)院學(xué)習(xí)部資料庫(kù)31一、初始化命令字ICWICW1芯片控制初始化命令字標(biāo)30A0:決定寫(xiě)入命令字的端口地址A0=0,表示ICW1必須寫(xiě)入8259A的低地址端口中例1:系統(tǒng)中8259A端口地址為20H、21H,工作在單片方式,電平觸發(fā),要求設(shè)置ICW4解:初始化ICW1的指令為: MOV AL ,1BH OUT 20H ,
18、AL00011011B電氣學(xué)院學(xué)習(xí)部資料庫(kù)32A0:決定寫(xiě)入命令字的端口地址00011011B電氣學(xué)院31ICW2設(shè)置中斷類(lèi)型號(hào)初始化命令字 A0 D7 D0 中斷類(lèi)型的高5位 作用:用來(lái)設(shè)置中斷類(lèi)型號(hào)的基值,即IR0端對(duì)應(yīng)的中斷類(lèi)型號(hào)例2:若T7T3=00001,即IR0的類(lèi)型號(hào)為08H, IR0IR7:08H0FH 則初始化ICW2的指令為: MOV AL ,08H OUT 21H ,AL000T3T4T5T6T71電氣學(xué)院學(xué)習(xí)部資料庫(kù)33ICW2設(shè)置中斷類(lèi)型號(hào)初始化命令字000T3T4T532主片 Si= 0:表示IRi端上未接有8259A從片 1:表示IRi端上接有8259A從片從片
19、ID2ID0=000111 表示從片接在主片的哪個(gè)IRi端1S0S1S2S3S4S5S6S7ICW3標(biāo)識(shí)主片/從片初始化命令字 (當(dāng)ICW1中SNGL=0時(shí)才設(shè)置)ID0ID1ID2000001電氣學(xué)院學(xué)習(xí)部資料庫(kù)34主片1S0S1S2S3S4S5S6S7ICW3標(biāo)識(shí)主33A0 D7 D4 D3 D2 D1 D01:8086/8088配置 0:8080/8085 1:自動(dòng)EOI方式0:非自動(dòng)EOI方式 0:非緩沖方式 1:緩沖方式 1:特殊全嵌套工作方式0:完全嵌套工作方式 1ICW4方式控制初始化命令字(當(dāng)ICW1中IC4=1時(shí)才設(shè)置)PMAEOIM/SBUFSFNM0 0 0電氣學(xué)院學(xué)習(xí)部
20、資料庫(kù)35A0 D7 D4 D3 34 Mi= 1:屏蔽由IRi引入的中斷請(qǐng)求 0:允許 例:系統(tǒng)要求屏蔽IR4、IR7 MOV AL ,10010000B OUT 21H ,ALM0M1M2M3M4M5M6M71二、操作命令字OCW1中斷屏蔽操作命令字電氣學(xué)院學(xué)習(xí)部資料庫(kù)36M0M1M2M3M4M5M6M71二、操作命令字OC350000:IR0 001:IR1 111:IR7001:普通EOI方式 011:特殊EOI方式101:普通EOI循環(huán)方式111:特殊EOI循環(huán)方式 000:自動(dòng)EOI循環(huán)(復(fù)位) 100:自動(dòng)EOI循環(huán)(置位) 110:置位優(yōu)先權(quán)命令 010:無(wú)效 標(biāo)志位OCW2
21、優(yōu)先權(quán)循環(huán)方式和中斷結(jié)束方式操作字L0L1L200EOISLR電氣學(xué)院學(xué)習(xí)部資料庫(kù)370000:IR0 001:普通EOI方式 標(biāo)志位OC36R:(ROTATE) R=1 中斷優(yōu)先級(jí)按循環(huán)方式SL:指明L2L0是否有效;SL=1,L2L0有效EOI:指定中斷結(jié)束;EOI=1,用中斷命令結(jié)束電氣學(xué)院學(xué)習(xí)部資料庫(kù)38R:(ROTATE) R=1 中斷優(yōu)先級(jí)按循環(huán)方式電氣學(xué)37OCW3 特殊屏蔽方式和查詢(xún)方式操作字0X:無(wú)效 10:讀IRR 11:讀ISR 1:查詢(xún)8259A狀態(tài) 0:不查詢(xún) 0X:無(wú)效 10:特殊屏蔽方式復(fù)位 11:特殊屏蔽方式置位標(biāo)志位RISRRP10SMMESMM0電氣學(xué)院學(xué)習(xí)
22、部資料庫(kù)39OCW3 特殊屏蔽方式和查詢(xún)方式操作字0X:無(wú)效 38三、優(yōu)先級(jí)設(shè)置方式完全嵌套方式 默認(rèn)特點(diǎn):中斷優(yōu)先級(jí)次序固定。IR0最高,IR7最低中斷嵌套時(shí),允許優(yōu)先處理更高級(jí)的中斷,禁止同級(jí)或低級(jí)中斷ICW4中,SFNM=0;OCW2中,R.SL=0 0特殊全嵌套工作方式中斷優(yōu)先級(jí)次序固定。IR0最高,IR7最低中斷嵌套時(shí),允許優(yōu)先處理更高級(jí)或同級(jí)的中斷ICW4中,SFNM=1;OCW2中,R.SL=0 0專(zhuān)門(mén)用于多片8259A級(jí)聯(lián)的系統(tǒng)電氣學(xué)院學(xué)習(xí)部資料庫(kù)40三、優(yōu)先級(jí)設(shè)置方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)39優(yōu)先級(jí)自動(dòng)循環(huán)方式優(yōu)先級(jí)次序可以改變,初始次序?yàn)镮R0最高,IR7最低,但當(dāng)任何一級(jí)中
23、斷被處理完后,它的優(yōu)先級(jí)變?yōu)樽畹停瑢⒆罡邇?yōu)先級(jí)賦給原先比它低一級(jí)的中斷請(qǐng)求例:響應(yīng)處理完IR3,則優(yōu)先級(jí)次序?yàn)镮R4、IR5、IR6、IR7、IR0、IR1、IR2、IR3OCW2中,R.SL=1 0適用在多個(gè)中斷源優(yōu)先級(jí)相等的場(chǎng)合優(yōu)先級(jí)特殊循環(huán)方式優(yōu)先級(jí)次序可以改變,初始的優(yōu)先級(jí)次序由程序決定OCW2中,R.SL=1 1電氣學(xué)院學(xué)習(xí)部資料庫(kù)41優(yōu)先級(jí)自動(dòng)循環(huán)方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)40四、中斷結(jié)束方式(什么時(shí)刻使ISR中對(duì)應(yīng)位置“0”,就產(chǎn)生不同的中斷結(jié)束方式)ICW4,OCW2固定優(yōu)先級(jí)方式 普通EOI結(jié)束方式 非自動(dòng)EOI結(jié)束方式 特殊EOI結(jié)束方式 自動(dòng)AEOI結(jié)束方式:不執(zhí)行結(jié)束命令
24、循環(huán)優(yōu)先級(jí)方式 普通EOI循環(huán)方式 非自動(dòng)EOI循環(huán)方式 特殊EOI循環(huán)方式 自動(dòng)EOI循環(huán)方式 用中斷結(jié)束命令使ISR對(duì)應(yīng)位置0電氣學(xué)院學(xué)習(xí)部資料庫(kù)42四、中斷結(jié)束方式用中斷結(jié)束命令使ISR對(duì)應(yīng)位置0電氣學(xué)院41自動(dòng)EOI結(jié)束方式 建議避免使用,以免重復(fù)嵌套中斷響應(yīng)后,當(dāng)8259A收到第二個(gè)脈沖后,即自動(dòng)將ISR中正在服務(wù)的相應(yīng)位置“0”ICW4中AEOI位置“1”普通EOI結(jié)束方式一旦中斷處理結(jié)束,CPU向8259A傳送EOI結(jié)束命令字(即設(shè)置OCW2),EOI結(jié)束命令字必須放在中斷服務(wù)子程序中的返回指令I(lǐng)RET前8259A收到EOI結(jié)束命令字后,將ISR中優(yōu)先級(jí)別最高的置“1”位清“0”
25、ICW4中AEOI位置“0”,OCW2中,R、SL、EOI=0 0 1電氣學(xué)院學(xué)習(xí)部資料庫(kù)43自動(dòng)EOI結(jié)束方式 建議避免使用,以免重復(fù)嵌套電氣42特殊EOI結(jié)束方式同8259A收到EOI結(jié)束命令后,將ISR中由L2L0指定的相應(yīng)位清“0”ICW4中AEOI位置“0”;OCW2中 R.SL.EOI=0 1 1自動(dòng)EOI循環(huán)方式同同時(shí)自動(dòng)改變各級(jí)中斷的優(yōu)先級(jí)別 本級(jí)最低優(yōu)先級(jí) 下一級(jí)最高優(yōu)先級(jí)OCW2中,R.SL.EOI=1 0 0電氣學(xué)院學(xué)習(xí)部資料庫(kù)44特殊EOI結(jié)束方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)43普通EOI循環(huán)方式同同,同時(shí)自動(dòng)改變中斷優(yōu)先級(jí)別OCW2中,R.SL.EOI=1 0 1特殊EOI循
26、環(huán)方式同同OCW2中,R.SL.EOI=1 1 1電氣學(xué)院學(xué)習(xí)部資料庫(kù)45普通EOI循環(huán)方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)44例7-10:已知:優(yōu)先級(jí)別IR0最高、IR7最低,IR2、IR5有中斷請(qǐng)求信號(hào)。普通EOI循環(huán)方式原始狀態(tài)ISR內(nèi)容ISR7ISR6ISR5ISR4ISR3ISR2ISR1ISR000100100優(yōu)先級(jí)76543210處理完IR2ISR內(nèi)容00100000優(yōu)先級(jí)43210765處理完IR5ISR內(nèi)容00000000優(yōu)先級(jí)10765432電氣學(xué)院學(xué)習(xí)部資料庫(kù)46例7-10:已知:優(yōu)先級(jí)別IR0最高、IR7最低,IR245(1)CLI關(guān)中斷指令禁止所有的可屏蔽中斷 ( 以下兩種是對(duì)中
27、斷請(qǐng)求單獨(dú)屏蔽)(2)普通屏蔽方式將IMR的某一位置“1”,即可屏蔽對(duì)應(yīng)位的中斷請(qǐng)求設(shè)置中斷屏蔽操作命令字OCW1(3)特殊屏蔽方式希望在中斷處理子程序中,對(duì)本級(jí)中斷進(jìn)行屏蔽,而允許較高或較低優(yōu)先級(jí)的中斷進(jìn)入先設(shè)置OCW3中ESMM.SMM=1 1,再設(shè)置OCW1,使IMR中本級(jí)中斷對(duì)應(yīng)位置“1”中斷服務(wù)子程序結(jié)束后,取消特殊屏蔽方式,恢復(fù)原先優(yōu)先級(jí)的控制 (設(shè)置OCW1,使復(fù)位;再設(shè)置OCW3中ESMM.SMM=1 0)五、中斷源屏蔽方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)47(1)CLI關(guān)中斷指令五、中斷源屏蔽方式電氣學(xué)院學(xué)習(xí)部資46例:普通屏蔽方式,IR7、IR5、IR1被屏蔽。若此時(shí)IR3正被處理,則
28、IR3及比IR3低的中斷申請(qǐng)被屏蔽,只有IR0和IR2的中斷源可以產(chǎn)生中斷嵌套。低 高IR7 IR0 ISR中斷服務(wù)00001000IMR中斷屏蔽10100010IRR中斷請(qǐng)求11111111電氣學(xué)院學(xué)習(xí)部資料庫(kù)48例:普通屏蔽方式,IR7、IR5、IR1被屏蔽。若此時(shí)I47(1)邊沿觸發(fā)方式 8259A CPU,第二(2)高電平觸發(fā)方式 個(gè) 負(fù)脈沖,讀中斷類(lèi)型號(hào) (3)中斷查詢(xún)方式 外設(shè)發(fā)出中斷請(qǐng)求,8259A在ISR中相應(yīng)位置1 CPU使用軟件查詢(xún)來(lái)確定中斷源 CPU執(zhí)行的查詢(xún)程序應(yīng)包括如下過(guò)程: a、CPU關(guān)中斷CPUINT8259A IR0外設(shè)XDB六、 中斷請(qǐng)求引入方式電氣學(xué)院學(xué)習(xí)部
29、資料庫(kù)49(1)邊沿觸發(fā)方式 8259A 48b、CPU 8259A 偶地址 OCW3:c、CPU 8259A 偶地址 查詢(xún)字: IR= 1 :有外設(shè)請(qǐng)求中斷 0 :無(wú)外設(shè)請(qǐng)求中斷例:優(yōu)先級(jí)次序?yàn)镮R3、IR4、IR5、IR1、IR2若有中斷請(qǐng)求IR2、IR4,則W2 W1 W0=1 0 0W0W1W2IR0011000W2、W1、W0IRi組成的代碼表示當(dāng)前中斷請(qǐng)求的最高優(yōu)先級(jí)電氣學(xué)院學(xué)習(xí)部資料庫(kù)50b、CPU 49七、8259A的中斷級(jí)聯(lián)1、8259A與系統(tǒng)總線(xiàn)相連的方式:由初始化命令字ICW4來(lái)設(shè)置緩沖方式8259A通過(guò)總線(xiàn)驅(qū)動(dòng)器和數(shù)據(jù)總線(xiàn)相連SP/EN 為輸出端,與總線(xiàn)驅(qū)動(dòng)器允許端相連
30、 EN=0 控制 8259A CPU EN=1 8259A CPU編程/雙向使能緩沖數(shù)據(jù)電氣學(xué)院學(xué)習(xí)部資料庫(kù)51七、8259A的中斷級(jí)聯(lián)1、8259A與系統(tǒng)總線(xiàn)相連的方50非緩沖方式8259A直接與數(shù)據(jù)總線(xiàn)相連SP/EN為輸入端,用來(lái)決定本片8259A是主片還是從片 SP =1 主片 SP =0 從片2、CAS0CAS2 指出具體的從片 當(dāng)主片檢測(cè)到中斷請(qǐng)求來(lái)自從片,從主片的CAS0CAS2將級(jí)聯(lián)地址輸出到所有從片,只有級(jí)聯(lián)地址與CAS0CAS2相同的從片才能選通電氣學(xué)院學(xué)習(xí)部資料庫(kù)52非緩沖方式電氣學(xué)院學(xué)習(xí)部資料庫(kù)51一、硬件連接 圖7-14 1、兩級(jí)級(jí)聯(lián):1片主片,2片從片 2、非緩沖方式:無(wú)數(shù)據(jù)總線(xiàn)驅(qū)動(dòng)器 3、CAS0CAS2:主片從片 4、INT: 主:接CPU的控制總線(xiàn) 從:接主片的IRi端 5、SP/EN : 主:輸入 SP=1,接Vcc +5V 從:輸入
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年股權(quán)激勵(lì)合同:股權(quán)獎(jiǎng)勵(lì)與業(yè)績(jī)掛鉤條款3篇
- 2025年度濾袋材料費(fèi)用合同采購(gòu)與項(xiàng)目進(jìn)度管理合同3篇
- 2025年度網(wǎng)絡(luò)安全防護(hù)設(shè)備采購(gòu)合同范本與安全等級(jí)保護(hù)2篇
- 學(xué)生校園欺凌情況調(diào)查問(wèn)卷
- 敢于擔(dān)當(dāng)善于化解難題體會(huì)
- 護(hù)理人力資源管理1
- 黨史知識(shí)競(jìng)賽題庫(kù)及答案-一起學(xué)習(xí)黨史吧
- 八一南昌起義的意義是什么
- 2024版地方特色農(nóng)產(chǎn)品購(gòu)銷(xiāo)合作合同版
- 2024集體土地租賃協(xié)議書(shū)
- 《心肺復(fù)蘇及電除顫》課件
- 建筑材料供應(yīng)鏈管理服務(wù)合同
- 養(yǎng)殖場(chǎng)巡查制度模板
- 2023-2024學(xué)年浙江省杭州市西湖區(qū)五年級(jí)(上)期末數(shù)學(xué)試卷
- 2024-2025學(xué)年人教版初中物理九年級(jí)全一冊(cè)《電與磁》單元測(cè)試卷(原卷版)
- 江蘇單招英語(yǔ)考綱詞匯
- 淋巴水腫康復(fù)治療技術(shù)
- 礦山隱蔽致災(zāi)普查治理報(bào)告
- 零星維修工程 投標(biāo)方案(技術(shù)方案)
- 護(hù)理基礎(chǔ)測(cè)試題+參考答案
- 2024年事業(yè)單位財(cái)務(wù)工作計(jì)劃例文(6篇)
評(píng)論
0/150
提交評(píng)論