




已閱讀5頁(yè),還剩77頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
,專題六 輸入輸出和中斷系統(tǒng),第五章,主講教師 趙曉安,計(jì)算機(jī)科學(xué)與軟件學(xué)院計(jì)算機(jī)基礎(chǔ)教學(xué)部,主講教師 趙曉安,計(jì)算機(jī)硬件技術(shù)基礎(chǔ),1 輸入/輸出的基本概念 2 輸入/輸出數(shù)據(jù)的傳送方式 3 中斷技術(shù) MCS-51的中斷系統(tǒng) 學(xué)會(huì)MCS-51中斷程序設(shè)計(jì)及應(yīng)用 學(xué)會(huì)與中斷有關(guān)的硬件連線,本章重點(diǎn)及要求,5.1 輸入/輸出的基本概念 5.2 輸入/輸出數(shù)據(jù)的傳送方式 5.3 中斷技術(shù) 5.4 MCS-51的中斷系統(tǒng) 5.5 MCS-51對(duì)外部中斷源的擴(kuò)展,第五章 輸入/輸出和中斷,511 輸入/輸出設(shè)備 512 輸入/輸出傳送的信息 513 輸入/輸出接口的作用及其類型 514 I/O端口的編址方式,51 輸入/輸出的基本概念,521 無條件傳送方式 (又稱同步傳送) 522 查詢式傳送方式 (又稱條件傳送異步傳送),5.2 輸入/輸出數(shù)據(jù)的傳送方式,523 中斷傳送方式 524 DMA傳送方式,531 中斷的定義及必要性 532 中斷源 533 中斷的分類 534 中斷系統(tǒng)的功能 535 中斷處理過程,5.3 中斷技術(shù),541 MCS-51的中斷源和中斷標(biāo)志 542 MCS-51對(duì)中斷請(qǐng)求的控制 543 MCS-51對(duì)中斷的響應(yīng)和撤除 544 MCS-51中斷系統(tǒng)的初始化及應(yīng)用,5.4 MCS-51的中斷系統(tǒng), MCS-51 的中斷程序設(shè)計(jì)舉例, MCS-51 的中斷系統(tǒng)的結(jié)構(gòu),5.5.1 借用定時(shí)器/計(jì)時(shí)器溢出中斷擴(kuò)展外部中斷源 (P160 利用計(jì)數(shù)溢出,擴(kuò)展中斷源) 來自P3.4(T0)或P3.5(T1)引腳的 外部輸入計(jì)數(shù)脈沖相當(dāng)于中斷請(qǐng)求信號(hào) 5.5.2 使用硬件申請(qǐng)軟件查詢法擴(kuò)展外部中斷源 (P161 硬件申請(qǐng),軟件查詢的方法),55 MCS-51對(duì)外部中斷源的擴(kuò)展,511 輸入/輸出設(shè)備, 輸入設(shè)備: 定義:往主機(jī)傳送信息的設(shè)備 常用的輸入設(shè)備: 鍵盤、鼠標(biāo)、掃描儀、讀卡機(jī)等 輸出設(shè)備 定義:接收主機(jī)信息并送出信息呈現(xiàn)給人們的設(shè)備 常用的輸出設(shè)備: 顯示器、打印機(jī)、繪圖儀等,外設(shè)與CPU是通過接口連接,地址總線 AB,數(shù)據(jù)總線 DB,控制總線 CB,512 輸入/輸出傳送的信息, 數(shù)據(jù)信息 數(shù)字量 模擬量 開關(guān)量 狀態(tài)信息 表征外設(shè)狀態(tài) 控制信息 控制外設(shè)啟停,在輸入時(shí),輸入裝置的信息是否準(zhǔn)備好(Ready); 在輸出時(shí) ,輸出裝置是否有空(Empty),若輸出裝置正在輸出信息,則以Busy指示。,二進(jìn)制形式表示的數(shù)或以ASC碼表示的數(shù)或字符 。,模擬量必須先經(jīng)過A/D轉(zhuǎn)換才能輸入計(jì)算機(jī),計(jì)算機(jī)的控制輸出也必須先經(jīng)過D/A轉(zhuǎn)換才能控制執(zhí)行機(jī)構(gòu)。,只要用一位二進(jìn)制數(shù)即可表示的量,如電機(jī)的運(yùn)轉(zhuǎn)與停止,開關(guān)的合與斷,閥門的打開和關(guān)閉等。,513 輸入/輸出接口的作用及其類型,接口電路的作用 鎖存作用 防止由于CPU速度快,外設(shè)慢而產(chǎn)生的丟數(shù)現(xiàn)象 隔離作用 防止DB上的信息重疊 變換作用 在CPU與外設(shè)之間進(jìn)行信息類型、電平、傳送接收方式變換 聯(lián)絡(luò)作用 在CPU與外設(shè)之間進(jìn)行聯(lián)絡(luò),Ready, Busy,輸出接口電路鎖存作用,輸出接口中必須含鎖存器,來自CPU,速度匹配,輸入接口電路隔離作用,輸入接口中必須含三態(tài)門,防止信息重疊,1、 I/O接口的種類很多,有兩種基本類型 串行I/O接口 并行I/O接口 2、不可編程接口 例:74LS273、74LS373、74LS138 、74LS244 3、可編程接口 例:8155、8255、8250、8253,I/O接口的類型,514 I/O端口的編址方式, 統(tǒng)一編址 I/O端口與內(nèi)存儲(chǔ)器采用一套地址,完全象存儲(chǔ)器單元一樣處理,使用訪問存儲(chǔ)器的指令。 如:movx 類指令 獨(dú)立編址 采用一套與存儲(chǔ)器不同的地址,利用/MREQ(存儲(chǔ)器請(qǐng)求)和/IORQ(輸入輸出請(qǐng)求), CPU 有專門的I/O指令 如:IN, OUT MCS51系列采用統(tǒng)一編址 片內(nèi)RAM 與P0P3均用MOV指令 片外RAM與外擴(kuò)口I/O口均用MOVX指令,接口與端口,接口:由一個(gè)或多個(gè)端口組成。 端口:可被獨(dú)立選通的I/O接口電路,簡(jiǎn)稱口。 端口地址:端口在系統(tǒng)中被分配的惟一地址,簡(jiǎn)稱口地址。 端口可分為: 輸入端口CPU從中讀取外設(shè)的狀態(tài)或數(shù)據(jù)信息 輸出端口CPU通過它輸出控制信號(hào)或數(shù)據(jù)信息 狀態(tài)端口CPU從中讀取外設(shè)的狀態(tài)信息 控制端口由CPU控制輸出控制信號(hào) 數(shù)據(jù)端口 可以是輸入數(shù)據(jù)端口或輸出數(shù)據(jù)端口 I/O信息都是通過數(shù)據(jù)總線傳遞的。,521 無條件傳送方式(又稱同步傳送),應(yīng)用于定時(shí)為已知的且 固定不變的低速I/O 無需等待的高速I/O movx A,DPTR movx DPTR,A,無條件I/O舉例顯示程序設(shè)計(jì),輸入接口原理圖,DB,外設(shè)準(zhǔn)備好,置入狀態(tài)信號(hào) Q=1 CPU讀數(shù)據(jù)口時(shí)清掉狀態(tài)信號(hào),522 查詢式傳送方式 (又稱條件傳送異步傳送), CPU查詢外設(shè)狀態(tài)信息(Ready,Busy),條件 滿足時(shí),進(jìn)行數(shù)據(jù)傳送 程序簡(jiǎn)單 高速CPU查詢低速外設(shè) 浪費(fèi)CPU時(shí)間,效率低 輸入接口原理圖 輸出接口原理圖 程序流程圖,條件傳送方式程序舉例,Test:mov DPTR,#PORTS movx A,DPTR anl A,#40H jz Test ;(jnz Test) mov DPTR,#PORTD movx A,DPTR ;輸入 (movx DPTR,A;輸出),0/1,狀態(tài)信號(hào),D6,Ready=1 Busy=0,(A),523 中斷傳送方式,中斷:要求進(jìn)行輸入、輸出的外設(shè),發(fā)出就緒信號(hào)給CPU,作為中斷請(qǐng)求,打斷CPU正在進(jìn)行的工作,即中斷CPU正在執(zhí)行的程序。 中斷過程 中斷方式與查詢方式比較 提高了CPU的效率 CPU與外設(shè)可并行工作 CPU可及時(shí)響應(yīng)外部事件,中斷方式與查詢方式CPU占用時(shí)間比較,中斷過程, 利用DMAC(DMA控制器)實(shí)現(xiàn)成組、大批量的數(shù)據(jù)在內(nèi)存和外設(shè)之間的快速傳送。 DMA過程: 優(yōu)點(diǎn):速度快 缺點(diǎn):硬件復(fù)雜,成本增加,524 DMA傳送方式,DMA過程,外設(shè)向DMAC發(fā)DMA申請(qǐng) DMAC向CPU發(fā)BUSRQ CPU發(fā)BUSAK響應(yīng) DMAC發(fā)存儲(chǔ)器地址和讀寫信號(hào) DMA控制結(jié)束,恢復(fù)CPU對(duì)總線控制,531 中斷的定義及必要性,定義:所謂中斷是指中央處理器CPU正在處理某件事的時(shí)候,外部發(fā)生了某一事件,請(qǐng)求CPU迅速處理,CPU暫時(shí)中斷當(dāng)前的工作,轉(zhuǎn)入處理所發(fā)生的事件,處理完后,再回到原來被中斷的地方,繼續(xù)原來的工作。這樣的過程稱為中斷。,必要性及應(yīng)用 中斷功能便于實(shí)現(xiàn) 1分時(shí)操作 2實(shí)時(shí)處理 3故障處理 4.主機(jī)與外設(shè)之間的速度匹配,CPU和外設(shè)同時(shí)工作;CPU可以通過分時(shí)操作啟動(dòng)多個(gè)外設(shè)同時(shí)工作,統(tǒng)一管理。大大提高了CPU的利用率,也提高了輸入、輸出的速度。,當(dāng)計(jì)算機(jī)用于實(shí)時(shí)控制時(shí),中斷是一個(gè)十分重要的功能?,F(xiàn)場(chǎng)的各個(gè)參數(shù)、信息,需要的話可在任何時(shí)候發(fā)出中斷申請(qǐng),要求CPU處理;CPU就可以馬上響應(yīng)(若中斷是開放的話)加以處理。這樣的及時(shí)處理在查詢的工作方式是做不到的。,計(jì)算機(jī)在運(yùn)行過程中,往往會(huì)出現(xiàn)事先預(yù)料不到的情況,或出現(xiàn)一些故障:如電源突跳,存儲(chǔ)出錯(cuò),運(yùn)算溢出等等。計(jì)算機(jī)就可以利用中斷系統(tǒng)自行處理,而不必停機(jī)或報(bào)告工作人員。, 外設(shè)中斷請(qǐng)求 實(shí)時(shí)時(shí)鐘中斷請(qǐng)求 控制對(duì)象中斷源 故障引起的中斷 人為設(shè)置的中斷,532 中斷源,人為設(shè)置的中斷,不是隨機(jī)的,故稱為自愿中斷。,強(qiáng)迫中斷 引起的中斷都是隨機(jī)。,533 中斷的分類,MCS-51就是具有可屏蔽中斷功能的一類CPU。,534 中斷系統(tǒng)的功能, 中斷系統(tǒng) 包括中斷源的產(chǎn)生、中斷判優(yōu)、中斷查詢、中斷處理等實(shí)現(xiàn)這一全過程的硬件和軟件。,中斷技術(shù) 對(duì)中斷全過程的分析、研究及實(shí)現(xiàn)的方法,中斷判優(yōu),多中斷源同時(shí)發(fā)出中斷請(qǐng)求,CPU根據(jù)中斷的優(yōu)先級(jí)判斷優(yōu)先執(zhí)行的中斷請(qǐng)求。 中斷嵌套,CPU正在執(zhí)行主程序,CPU正在執(zhí)行低級(jí)中斷服務(wù)程序,CPU正在執(zhí)行高級(jí)中斷服務(wù)程序,CPU正在執(zhí)行低級(jí)中斷服務(wù)程序,掛起的中斷,中斷查詢, 軟件查詢 硬件查詢 中斷優(yōu)先級(jí)鏈?zhǔn)诫娐?中斷優(yōu)先級(jí)編碼電路,mov DPTR,#PortI movx A,DPTR RLC A JC ASV RLC A JC BSV ASV: BSV: ,先查詢的優(yōu)先級(jí)高,硬件申請(qǐng) 軟件查詢,中斷處理,中斷響應(yīng)條件 CPU處于開中斷狀態(tài):51內(nèi)部有中斷允許觸發(fā)器EA EA=0 禁止中斷;EA=1 開放中斷。 中斷響應(yīng)過程 中斷響應(yīng):停止現(xiàn)行程序, 轉(zhuǎn)向中斷處理程序入口地址 關(guān)中斷 (MCS-51響應(yīng)中斷后,不自動(dòng)關(guān)中斷) 保護(hù)斷點(diǎn) (自動(dòng)將斷點(diǎn)地址壓入堆棧) 執(zhí)行中斷處理程序,執(zhí)行中斷處理程序, 保護(hù)現(xiàn)場(chǎng) 保護(hù)中斷服務(wù)程序中用到的寄存器和狀態(tài)標(biāo)志的內(nèi)容 中斷服務(wù) 相應(yīng)的中斷源服務(wù),完成一定的I/O操作 恢復(fù)現(xiàn)場(chǎng) 完成中斷服務(wù)后,將保存在堆棧中的現(xiàn)場(chǎng)數(shù)據(jù)恢復(fù) 開中斷和中斷返回 RETI (中斷返回指令),push PSW push ACC push DPH push DPL,pop DPL pop DPH pop ACC pop PSW,請(qǐng)看P150圖5-22,(1)設(shè)置中斷請(qǐng)求觸發(fā)器( 又稱中斷標(biāo)志觸發(fā)器) 每個(gè)中斷源需有一個(gè)中斷請(qǐng)求觸發(fā)器, 保持中斷請(qǐng)求信號(hào) ,直至CPU響應(yīng)這個(gè)中斷后,才可清除中斷請(qǐng)求。 當(dāng)中斷請(qǐng)求觸發(fā)器為“1”狀態(tài)時(shí)(Q=1),表示有中斷產(chǎn)生;Q=0表示沒有中斷產(chǎn)生。,中斷響應(yīng)條件,CPU響應(yīng)中斷的條件主要有以下幾點(diǎn):,設(shè)置中斷請(qǐng)求的情況,CPU 中也要有中斷標(biāo)志觸發(fā)器,有中斷請(qǐng)求則置1。,(2)需設(shè)置中斷屏蔽觸發(fā)器(又稱中斷允許觸發(fā)器) 每一個(gè)中斷源的接口電路中需增加一個(gè)中斷屏蔽觸發(fā)器,只有當(dāng)此觸發(fā)器為“1”時(shí),中斷源的中斷請(qǐng)求才能被送出至CPU 。,具有中斷屏蔽的接口電路,(3)中斷是開放的 在CPU內(nèi)部有一個(gè)中斷允許觸發(fā)器EA。只有當(dāng)EA為“1”時(shí)(即中斷開放時(shí)),CPU才能響應(yīng)中斷;若EA為“0”(即中斷是關(guān)閉的),這時(shí)外部有中斷請(qǐng)求,CPU不會(huì)響應(yīng),EA的狀態(tài)是可以用指令來控制的(稱為可編程的)。 (4)需設(shè)中斷優(yōu)先級(jí)觸發(fā)器 在CPU內(nèi)部要設(shè)置中斷優(yōu)先級(jí)觸發(fā)器,以實(shí)現(xiàn)嵌套; 在各中斷源中也要設(shè)一個(gè)中斷優(yōu)先級(jí)觸發(fā)器,由指令置位/復(fù)位,以表示本中斷源在中斷系統(tǒng)中的優(yōu)先級(jí)。 (5)CPU在現(xiàn)行指令結(jié)束后響應(yīng)中斷 在開中斷情況下,若中斷源有中斷請(qǐng)求,CPU也并不是立即響應(yīng),只是當(dāng)正在執(zhí)行的指令運(yùn)行到最后一個(gè)機(jī)器周期T狀態(tài)時(shí),CPU才采樣中斷源。若發(fā)現(xiàn)有中斷請(qǐng)求,則把內(nèi)部的中斷標(biāo)志鎖存器置“1”,然后下一個(gè)機(jī)器周期不進(jìn)入取指周期,而進(jìn)入中斷周期 。,LED顯示器程序設(shè)計(jì)_無條件I/O傳送例1, LED顯示器結(jié)構(gòu)與原理 LED顯示接口 顯示程序設(shè)計(jì),LED顯示器結(jié)構(gòu)與原理,LED顯示器是由個(gè)發(fā)光二極管顯示字段的顯示器件, 通過點(diǎn)亮不同的字段可顯示09、AF及小數(shù)點(diǎn)等字形。其外形結(jié)構(gòu)與原理見圖8-1所示。,(a)LED管腳圖;(b)共陰極;(c)共陽(yáng)極,要使數(shù)碼管顯示指定的字符 對(duì)共陰極接法的電路: 1、要發(fā)光的二極管段加高電平 2、共陰極端接低電平,稱0CFH為字形碼 G端稱為字位,LED顯示器有靜態(tài)顯示與動(dòng)態(tài)顯示兩種形式 : 1、靜態(tài)顯示接口 常采用MC14495芯片作為L(zhǎng)ED的靜態(tài)顯示器接口,它是MOTOROLA公司生產(chǎn)CMOS BCD七段十六進(jìn)制鎖存、譯碼驅(qū)動(dòng)芯片,可以與LED顯示器直接相連。具體應(yīng)用略。 2. 動(dòng)態(tài)顯示接口 常用可編程并行接口芯片8155作為L(zhǎng)ED動(dòng)態(tài)顯示器的接口。實(shí)驗(yàn)設(shè)備中8031通過8155接六只共陰極LED動(dòng)態(tài)顯示器的接口。PA口作為字位碼口,PB口作為字形(字段)碼口。,LED顯示接口,靜態(tài)顯示電路,所謂動(dòng)態(tài)顯示就是一位一位地輪流點(diǎn)亮各位顯示器(稱為動(dòng)態(tài)掃描),對(duì)于每一位顯示器來說,每隔一段時(shí)間點(diǎn)亮一次。顯示器的亮度即與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。調(diào)整電流和時(shí)間參數(shù),可實(shí)現(xiàn)亮度較高較穩(wěn)定的顯示。,動(dòng)態(tài)顯示原理,顯示緩沖區(qū)每個(gè)顯示塊對(duì)應(yīng)一個(gè)存儲(chǔ)單元,存放該塊要顯示的字形碼表中的序號(hào)或字形碼。,7EH,7DH,7CH,7BH,7AH,79H,6,5,4,3,2,1,查字形碼表得到字符6的字形碼82H送字形碼口 將20H送字位碼口則該位顯示6,其它位的顯示類同,依次循環(huán)往復(fù)從低位到高位查字形碼表,得到對(duì)應(yīng)的字形碼送字形碼口,其塊的字位碼送字位碼口,由于視覺殘留,六個(gè)不同的字符就同時(shí)顯示出來。,字形碼表,字位表,8155動(dòng)態(tài)顯示電路,ORG 0000H DISP: MOV SP,#5FH MOV A,#03H;對(duì)8155初始化,A口、B口輸出 MOV DPTR,#0FF20H MOVX DPTR,A DISP4: MOV R5,#01H ;置字位碼初值 MOV R0,#79H ;置顯示緩沖區(qū)指針初值 MOV A,R5 LD0: MOV DPTR,#0FF21H ;字位碼送8155 A口 MOVX DPTR,A MOV DPTR,#0FF22H MOV A,R0 ADD A,#0EH MOVC A,A+PC ;查字形碼表 MOVX DPTR,A ;字形碼送8155 B口 ACALL DLAY ;延時(shí) 1MS INC R0 MOV A,R5,JB ACC.5,LD1 RL A MOV R5,A AJMP LD0 LD1: SJMP DISP4 DB 0C0H,0F9H,0A4H,0B0H,99H,92H DB 82H,0F8H,80H,90H,88H,83H,0C6H DB 0A1H,86H,8EH,0FFH,0CH,89H DB 0C8H,0C1H,7FH,0BFH DLAY: MOV R7,#02H ;延時(shí)子程序 DL1: MOV R6,#0FFH DL2: DJNZ R6,DL2 DJNZ R7,DL1 RET END,;字形碼表,口指針DPTR,查表PC,ORG 0000H DISP: MOV SP,#5FH MOV A,#03H;對(duì)8155初始化,A口、B口輸出 MOV R1,#20H MOVX R1,A DISP4: MOV R5,#01H ;置字位碼初值 MOV R0,#79H ;置顯示緩沖區(qū)指針初值 MOV A,R5 LD0: MOV R1,#21H ;字位碼送8155 A口 MOVX R1,A MOV R1,#22H MOV A,R0 MOV DPTR,#TAB MOVC A,A+DPTR ;查字形碼表 MOVX R1,A ;字形碼送8155 B口 ACALL DLAY ;延時(shí) 1MS INC R0 MOV A,R5,JB ACC.5,LD1 RL A MOV R5,A AJMP LD0 LD1: SJMP DISP4 TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H DB 82H,0F8H,80H,90H,88H,83H,0C6H DB 0A1H,86H,8EH,0FFH,0CH,89H DB 0C8H,0C1H,7FH,0BFH DLAY: MOV R7,#02H ;延時(shí)子程序 DL1: MOV R6,#0FFH DL2: DJNZ R6,DL2 DJNZ R7,DL1 RET END,;字形碼表,口指針R1,查表DPTR,MCS-51 的中斷系統(tǒng)的結(jié)構(gòu),5.4.1 MCS-51的中斷源和中斷標(biāo)志,MCS-51 共有5個(gè)中斷源 外部中斷0 外部中斷1 T0溢出中斷 T1溢出中斷 串行口中斷,外部中斷請(qǐng)求0、1, 中斷請(qǐng)求信號(hào)輸入引腳:,中斷請(qǐng)求信號(hào), 外部中斷請(qǐng)求信號(hào)觸發(fā)方式選擇(IT0/1位),SETB IT0, 外部中斷請(qǐng)求標(biāo)志位、中斷允許位、優(yōu)先級(jí)選擇位:,高,低,TCON, IT0(IT1):外部中斷請(qǐng)求0(1)的觸發(fā)方式選擇 IT0=0 電平觸發(fā)方式;IT0=1 邊沿觸發(fā)方式 IE0(IE1):外部中斷請(qǐng)求0(1)的中斷申請(qǐng)標(biāo)志 IT0=0 CPU每個(gè)機(jī)器周期采樣/INT0,若/INT0=1 則IE0=0 否則/INT0=0, IE0=1申請(qǐng)中斷 IT0=1 若第一個(gè)機(jī)器周期/INT0=1,第二個(gè)機(jī)器周期/INT0=0,則IE0=1申請(qǐng)中斷,否則IE0=0 轉(zhuǎn)向中斷服務(wù)時(shí)邊沿觸發(fā)方式下IE由硬件清零 轉(zhuǎn)向中斷服務(wù)時(shí)電平觸發(fā)方式下硬件不清IE,待申請(qǐng)信號(hào)撤消。,T0、T1溢出中斷,TCON, TF0:51片內(nèi)定時(shí)/計(jì)數(shù)器0溢出中斷請(qǐng)求標(biāo)志。 定時(shí)/計(jì)數(shù)器0溢出時(shí),TF0由硬件置1 CPU 響應(yīng)中斷時(shí) 自動(dòng)清零 TF0 TF0 也可軟件清零, TF1: 51片內(nèi)定時(shí)/計(jì)數(shù)器1溢出中斷請(qǐng)求標(biāo)志,串行口中斷, RI:串行口接收中斷標(biāo)志 RI=1串行口接收中斷 TI:串行口發(fā)送中斷標(biāo)志 TI=1串行口發(fā)送中斷 RI、TI 由硬件置位 必須由軟件清零,SCON,5.4.2 MCS-51 對(duì)中斷請(qǐng)求的控制,總結(jié)中斷源的各個(gè)觸發(fā)器(p154)表5-1),寄存器: TCON、SCON 、IE 、IP 復(fù)位后,這四個(gè)寄存器均為00H。,若設(shè)置串行口和定時(shí)器/計(jì)數(shù)器1為高級(jí)中斷: SETB PS SETB PT1 問:設(shè)置后,那個(gè)中斷源的優(yōu)先級(jí)最高? 那個(gè)中斷源的優(yōu)先級(jí)最低? 答: 設(shè)置后,優(yōu)先級(jí)的順序?yàn)椋?TF1 RI/TI INT0 TF0 INT1,5.4.3 MCS-51對(duì)中斷的響應(yīng)與撤消, MCS-51中斷響應(yīng)的基本條件 MCS-51中斷響應(yīng)過程 MCS-51中斷響應(yīng)時(shí)間 MCS-51中斷請(qǐng)求的撤消,MCS-51中斷響應(yīng)的基本條件, 51 CPU 中斷受阻的條件: CPU 正在處理相同或更高級(jí)中斷 現(xiàn)行的機(jī)器周期不是所執(zhí)行指令的最后一個(gè)機(jī)器周期 正在執(zhí)行的指令是訪問IE、IP或RETI指令 在執(zhí)行上述指令后至少再執(zhí)行一條指令,才可能響應(yīng)中斷。, MCS-51的中斷響應(yīng)的基本條件: 首先要有中斷源發(fā)出中斷申請(qǐng); 中斷總允許位EA=1,即CPU允許所有中斷源申請(qǐng)中斷; 在中斷源寄存器TCON和SCON中,申請(qǐng)中斷的中斷允許位為1, 即此中斷源可以向CPU申請(qǐng)中斷。,A 51CPU自動(dòng)完成: CPU先在每個(gè)機(jī)器周期的S5P2期間,對(duì)各中斷源重復(fù)進(jìn)行查詢,并設(shè)置相應(yīng)的中斷標(biāo)志位 。 如果中斷響應(yīng)條件滿足,且不存在中斷阻斷的情況,則CPU就響應(yīng)中斷。 硬件生成長(zhǎng)調(diào)用指令自動(dòng)地把斷點(diǎn)地址壓入堆棧保護(hù),并隨之將對(duì)應(yīng)的中斷入口裝入程序計(jì)數(shù)器PC,使程序轉(zhuǎn)向該入口地址,以執(zhí)行中斷服務(wù)程序。 A 用戶必須完成: 在這些入口地址存放一條無條件跳轉(zhuǎn)指令,使程序跳轉(zhuǎn)到用戶安排的中斷服務(wù)程序起始地址上去 。,MCS-51響應(yīng)中斷的過程,MCS-51 的中斷響應(yīng)過程,中斷入口地址表,低級(jí)中斷源的 中斷服務(wù)程序,用戶編程設(shè)計(jì),CLR EA,SETB EA,MCS-51 的中斷程序設(shè)計(jì)舉例,ORG 0000H AJMP MAIN ORG 0003H LJMP EX1SVR ORG 0100H MAIN:MOV SP#6FH SETB IT0 SETB EX0 SETB EA SJMP $;等待中斷,EX1SVR: PUSH PSW PUSH ACC MOV A,#0FFH MOV P1,A MOV A,P1 SWAP A MOV P1,A POP ACC POP PSW RETI END,初始化部分,答:將子程序入口地址壓入堆棧,因?yàn)樗荂ALL指令的 轉(zhuǎn)移目標(biāo)地址, 而不是CALL的下一條指令地址。,問:響應(yīng)中斷后什么地址壓入堆棧?,答:將 SJMP $ 指令的轉(zhuǎn)移目標(biāo)地址壓入堆棧。即 中斷在本 指令處產(chǎn)生,本指令的目標(biāo)地址是本指令地址。,問:若中斷在CALL指令執(zhí)行后產(chǎn)生, 響應(yīng)中斷后什么地址壓入堆棧?,問:若要控制中斷的次數(shù),在主程序中采用CJNE R7,#10,NEXT指令,NEXT標(biāo)號(hào)應(yīng)寫在什么語(yǔ)句上?,答:將NEXT標(biāo)號(hào)寫在本指令上。 即:NEXT:CJNE R7,#10,NEXT;等待中斷 必須在中斷服務(wù)程序中用INC R7指令更新R7的值。 R7的初值在主程序的初始化部分置入。,子程序與中斷服務(wù)程序的區(qū)別, 對(duì)強(qiáng)迫中斷的服務(wù)程序具有隨機(jī)性 要考慮可能在程序的什么指令處發(fā)生, 要保護(hù)什么內(nèi)容,才能保證返回?cái)帱c(diǎn)后正常工作。 對(duì)人為設(shè)置的軟件中斷與子程序調(diào)用的區(qū)別 返回指令不同 子程序返回用RET 中斷服務(wù)程序返回用RETI 處理內(nèi)容不同,中斷一般處理I/O操作。,544 MCS-51中斷系統(tǒng)的初始化及應(yīng)用,1、MCS-51中斷系統(tǒng)的初始化,中斷系統(tǒng)初始化步驟為: 1)CPU開中斷或關(guān)中斷; 2)某中斷源中斷請(qǐng)求的允許或禁止(屏蔽); 3)設(shè)定所用中斷的中斷優(yōu)先級(jí); 4)若為外部中斷,則應(yīng)規(guī)定低電平還是負(fù)邊沿 的中斷觸發(fā)方式。,解: (1)采用位操作指令 SETB EA ;CPU開中斷 SETB EX1 ;開/INT1中斷 SETB PX1 ;令/INT1為高優(yōu)先級(jí) CLR IT1 ;令/INT1為電平觸發(fā) (2)采用字節(jié)型指令 MOV IE,#84H ;開/INT1中斷 ORL IP,#04H ;令/INT1為高優(yōu)先級(jí) ANL TCON,#OFBH ;令/INT1為電平觸發(fā),IT1=0,例5-2請(qǐng)寫出/INT1為低電平觸發(fā)的中斷系統(tǒng)初始化程序,(1)主程序 主程序除了用來對(duì)MCS-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人信息保護(hù)合同范例
- 專項(xiàng)抵押合同樣本
- 全國(guó)銷售權(quán)合同范例
- 乙醇購(gòu)銷合同范例
- 企業(yè)eap合同范例
- 企業(yè)物業(yè)合同范例
- 與家具廠家定貨合同范例
- 企業(yè)數(shù)字化進(jìn)程中的供應(yīng)鏈管理與區(qū)塊鏈融合研究
- 產(chǎn)權(quán)房贈(zèng)與合同范例
- 臨床轉(zhuǎn)化研究在醫(yī)療器械領(lǐng)域的應(yīng)用與前景
- 匯川技術(shù)在線測(cè)評(píng)題庫(kù)
- 標(biāo)準(zhǔn)預(yù)防及分級(jí)防護(hù)
- 介紹錢三強(qiáng)的
- 多元智能理論與學(xué)科融合
- 走進(jìn)音樂世界三年級(jí)上冊(cè)《風(fēng)鈴》課件
- 2024年茂名市高三第一次綜合測(cè)試(一模)化學(xué)試卷(含答案)
- 危險(xiǎn)性較大的分部分項(xiàng)工程一覽表(建辦質(zhì)〔2018〕31號(hào))
- 個(gè)人租車簡(jiǎn)易協(xié)議書電子版
- 消防控制室值班服務(wù)投標(biāo)方案
- 2023風(fēng)力發(fā)電機(jī)組在線狀態(tài)監(jiān)測(cè)裝置技術(shù)規(guī)范
- 丘市天資報(bào)廢汽車回收拆解無害化處理項(xiàng)目環(huán)境影響報(bào)告
評(píng)論
0/150
提交評(píng)論