版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第4 4章章 中斷系統(tǒng)中斷系統(tǒng)中斷響中斷響應(yīng)應(yīng)中斷級別中斷級別知識點:知識點:中斷控中斷控制制中斷源中斷源 先通過一個生活常識,啟發(fā)對中斷的認識:先通過一個生活常識,啟發(fā)對中斷的認識: 當(dāng)你正在家里上網(wǎng)聊天時,電話鈴響了當(dāng)你正在家里上網(wǎng)聊天時,電話鈴響了,你會,你會暫時停止聊天而去接電話,暫時停止聊天而去接電話,正在接電話的時候有正在接電話的時候有人按門鈴人按門鈴,你不得不放下電話去開門,然后繼續(xù),你不得不放下電話去開門,然后繼續(xù)接電話,電話接完后再回到網(wǎng)上繼續(xù)聊天。接電話,電話接完后再回到網(wǎng)上繼續(xù)聊天。 這里的網(wǎng)上聊天是這里的網(wǎng)上聊天是當(dāng)前任務(wù)當(dāng)前任務(wù) 電話鈴響和門鈴響都屬于電話鈴響和門鈴
2、響都屬于中斷源中斷源 先處理門鈴還是電話鈴是先處理門鈴還是電話鈴是中斷級別中斷級別 接電話和開門是接電話和開門是中斷響應(yīng)中斷響應(yīng) 對于這三件事的孰緩孰急的判斷為對于這三件事的孰緩孰急的判斷為中斷控制。中斷控制。 計算機中的中斷概念計算機中的中斷概念中斷中斷是指由于某種隨機事件的發(fā)生,是指由于某種隨機事件的發(fā)生,計算機暫停現(xiàn)行程序的運行,轉(zhuǎn)去計算機暫?,F(xiàn)行程序的運行,轉(zhuǎn)去執(zhí)行另一程序,以處理發(fā)生的事件,執(zhí)行另一程序,以處理發(fā)生的事件,處理完畢后又自動返回原來的程序處理完畢后又自動返回原來的程序繼續(xù)運行。繼續(xù)運行。CPUCPU現(xiàn)行運行的程序現(xiàn)行運行的程序稱為稱為主程序主程序。處理隨機事件的程序處理
3、隨機事件的程序稱為稱為中斷服務(wù)中斷服務(wù)子程序子程序。 在在CPUCPU與外設(shè)交換信息時,若用查詢的方與外設(shè)交換信息時,若用查詢的方式,則式,則CPUCPU會浪費較多的時間去等待外設(shè),使會浪費較多的時間去等待外設(shè),使CPUCPU的工作效率較低,這就是快速的的工作效率較低,這就是快速的CPUCPU和慢速和慢速的外設(shè)之間的矛盾,為了解決這個問題,引入的外設(shè)之間的矛盾,為了解決這個問題,引入了中斷的概念,引入中斷后有以下優(yōu)點:了中斷的概念,引入中斷后有以下優(yōu)點: 1 1同步工作同步工作 2 2實時處理實時處理 3 3故障處理故障處理為為什什么么要要用用中中斷斷 計算機有了中斷功能后,就可以使計算機有了
4、中斷功能后,就可以使CPU和外設(shè)同和外設(shè)同步工作,步工作,CPU啟動外設(shè)工作后,就繼續(xù)執(zhí)行主程序。啟動外設(shè)工作后,就繼續(xù)執(zhí)行主程序。 外設(shè)把數(shù)據(jù)準備好后,發(fā)出中斷請求,請求外設(shè)把數(shù)據(jù)準備好后,發(fā)出中斷請求,請求CPU中中斷原程序的執(zhí)行,轉(zhuǎn)去執(zhí)行輸入輸出斷原程序的執(zhí)行,轉(zhuǎn)去執(zhí)行輸入輸出(中斷處理中斷處理),中,中斷程序執(zhí)行完后,斷程序執(zhí)行完后,CPU恢復(fù)執(zhí)行主程序,外設(shè)也繼續(xù)恢復(fù)執(zhí)行主程序,外設(shè)也繼續(xù)工作,這樣,工作,這樣,CPU就可指揮多個外設(shè)同時工作,大大就可指揮多個外設(shè)同時工作,大大提高了提高了CPU的利用率,也提高了輸入輸出速度。的利用率,也提高了輸入輸出速度。 在實時控制中,現(xiàn)場采集到
5、的各種數(shù)據(jù)可在實時控制中,現(xiàn)場采集到的各種數(shù)據(jù)可在任一時刻發(fā)出中斷請求,要求在任一時刻發(fā)出中斷請求,要求CPU處理,若處理,若中斷是開放的,則中斷是開放的,則CPU就可以馬上對數(shù)據(jù)進行就可以馬上對數(shù)據(jù)進行處理。處理。 若計算機在運行過程中出現(xiàn)了事先預(yù)料不若計算機在運行過程中出現(xiàn)了事先預(yù)料不到的情況或故障時到的情況或故障時(如掉電、存儲出錯、溢出等如掉電、存儲出錯、溢出等),可以利用中斷系統(tǒng)自行處理,而不必停機。可以利用中斷系統(tǒng)自行處理,而不必停機。通常的中斷源有以下幾種通常的中斷源有以下幾種外部輸入輸出設(shè)備,如鍵盤、打印機等。外部輸入輸出設(shè)備,如鍵盤、打印機等。 數(shù)據(jù)通信設(shè)備,如雙機或多機通信
6、。數(shù)據(jù)通信設(shè)備,如雙機或多機通信。定時時鐘。定時時鐘。故障源,如掉電保護請求等。故障源,如掉電保護請求等。為調(diào)試程序而設(shè)置的中斷源。為調(diào)試程序而設(shè)置的中斷源。中中斷斷源源引起中斷的原因,或能發(fā)出中斷申請的來源,稱為中斷源。引起中斷的原因,或能發(fā)出中斷申請的來源,稱為中斷源。 1實現(xiàn)中斷并返回實現(xiàn)中斷并返回2能實現(xiàn)優(yōu)先權(quán)排隊能實現(xiàn)優(yōu)先權(quán)排隊3高級中斷源能中斷低級中斷源的中斷處理高級中斷源能中斷低級中斷源的中斷處理 中中斷斷系系統(tǒng)統(tǒng)的的功功能能 、當(dāng)某一個中斷源發(fā)出中斷請求時,、當(dāng)某一個中斷源發(fā)出中斷請求時,CPU應(yīng)決定是應(yīng)決定是否響應(yīng)這個中斷請求否響應(yīng)這個中斷請求(當(dāng)當(dāng)CPU正在執(zhí)行更重要的工作
7、時,正在執(zhí)行更重要的工作時,可暫不響應(yīng)中斷可暫不響應(yīng)中斷)。 、若響應(yīng)這個中斷請求,、若響應(yīng)這個中斷請求,CPU必須在現(xiàn)行的指令執(zhí)必須在現(xiàn)行的指令執(zhí)行完后,保護現(xiàn)場和斷點,然后轉(zhuǎn)到需要處理的中斷源的行完后,保護現(xiàn)場和斷點,然后轉(zhuǎn)到需要處理的中斷源的服務(wù)程序入口,執(zhí)行中斷服務(wù)程序。服務(wù)程序入口,執(zhí)行中斷服務(wù)程序。 、當(dāng)中斷處理完后再恢復(fù)現(xiàn)場和斷點,使、當(dāng)中斷處理完后再恢復(fù)現(xiàn)場和斷點,使CPU返回返回去繼續(xù)執(zhí)行主程序。去繼續(xù)執(zhí)行主程序。 通常,在系統(tǒng)中有多個中斷源,有時會出現(xiàn)兩個或兩通常,在系統(tǒng)中有多個中斷源,有時會出現(xiàn)兩個或兩個以上的中斷源同時提出中斷請求的情況,這時,個以上的中斷源同時提出中斷
8、請求的情況,這時,CPUCPU應(yīng)應(yīng)能找到優(yōu)先級別最高的中斷源,響應(yīng)它的中斷請求,在優(yōu)能找到優(yōu)先級別最高的中斷源,響應(yīng)它的中斷請求,在優(yōu)先級別最高的中斷源處理完后,再響應(yīng)級別較低的中斷源。先級別最高的中斷源處理完后,再響應(yīng)級別較低的中斷源。當(dāng)當(dāng)CPUCPU響應(yīng)某一中斷源的請求在進行中斷處理時,若有優(yōu)響應(yīng)某一中斷源的請求在進行中斷處理時,若有優(yōu)先級別更高的中斷源發(fā)出中斷請求,則先級別更高的中斷源發(fā)出中斷請求,則CPUCPU應(yīng)能中斷正在應(yīng)能中斷正在執(zhí)行的中斷服務(wù)程序,保留這個程序的斷點和現(xiàn)場,響應(yīng)執(zhí)行的中斷服務(wù)程序,保留這個程序的斷點和現(xiàn)場,響應(yīng)高級中斷,在高級中斷處理完后,再繼續(xù)執(zhí)行被中斷的中高級
9、中斷,在高級中斷處理完后,再繼續(xù)執(zhí)行被中斷的中斷服務(wù)程序。若當(dāng)發(fā)出新的中斷請求的中斷源的優(yōu)先級別斷服務(wù)程序。若當(dāng)發(fā)出新的中斷請求的中斷源的優(yōu)先級別與正在處理的中斷源同級或更低時,與正在處理的中斷源同級或更低時,CPUCPU不響應(yīng)這個中斷不響應(yīng)這個中斷請求,直到正在處理的中斷服務(wù)程序執(zhí)行完后,才去處理請求,直到正在處理的中斷服務(wù)程序執(zhí)行完后,才去處理新的中斷請求。新的中斷請求。 MCS-51中斷系統(tǒng)組成 中斷源中斷源 中斷標志中斷標志 中斷允許中斷允許 中斷優(yōu)先級中斷優(yōu)先級 MCS-51MCS-51中斷系統(tǒng)結(jié)構(gòu)中斷系統(tǒng)結(jié)構(gòu) 中斷寄存器中斷寄存器 MCS-51MCS-51的中斷系統(tǒng)之中斷源的中斷系
10、統(tǒng)之中斷源8051單片機有單片機有5個中斷請求源個中斷請求源:單片機單片機INT0或 外部輸入中斷源外部輸入中斷源INT0(P3.2)INT1或 外部輸入中斷源外部輸入中斷源INT1(P3.3)T0 片內(nèi)定時器片內(nèi)定時器T0的溢出的溢出T1 片內(nèi)定時器片內(nèi)定時器T1的溢出的溢出串行口 片內(nèi)串行口發(fā)送或接收中斷源片內(nèi)串行口發(fā)送或接收中斷源 MCS-51MCS-51的中斷系統(tǒng)之中斷標志的中斷系統(tǒng)之中斷標志INT0INT1T0T1串口IE0TF0IE1TF1TIRI中斷源中斷源中斷標志位中斷標志位 每一個中斷源都有相應(yīng)的中斷標志位每一個中斷源都有相應(yīng)的中斷標志位 某一個中斷源申請中斷,相應(yīng)中斷標志位
11、置某一個中斷源申請中斷,相應(yīng)中斷標志位置1 MCS-51MCS-51的中斷系統(tǒng)之中斷允許的中斷系統(tǒng)之中斷允許INT0INT1T0T1串口IE0TF0IE1TF1TIRI中斷源中斷源中斷標志位中斷標志位 EA總中斷允許位,總中斷允許位,EA=1開放所有中斷,開放所有中斷,EA=0,禁止所有中斷;,禁止所有中斷; 某一個中斷源還有相應(yīng)的中斷允許位,某一個中斷源還有相應(yīng)的中斷允許位,1允許相應(yīng)中斷源的中斷,允許相應(yīng)中斷源的中斷,0禁禁止相應(yīng)中斷源的中斷。止相應(yīng)中斷源的中斷。中斷允許中斷允許ESET0EX0EX1ET1EA MCS-51MCS-51的中斷系統(tǒng)之中斷優(yōu)先級的中斷系統(tǒng)之中斷優(yōu)先級INT0I
12、NT1T0T1串口IE0TF0IE1TF1TISI中斷源中斷源中斷標志位中斷標志位 單片機中有兩個中斷優(yōu)先級,即高優(yōu)先級中斷和低優(yōu)先級中斷,單片機中有兩個中斷優(yōu)先級,即高優(yōu)先級中斷和低優(yōu)先級中斷,前者優(yōu)先權(quán)高于后者(在程序中設(shè)置,相應(yīng)位前者優(yōu)先權(quán)高于后者(在程序中設(shè)置,相應(yīng)位=1=1,為高優(yōu)先級);,為高優(yōu)先級); 同一優(yōu)先級別的中斷源按照自然優(yōu)先級順序確定優(yōu)先級別(硬件同一優(yōu)先級別的中斷源按照自然優(yōu)先級順序確定優(yōu)先級別(硬件形成,無法改變)。形成,無法改變)。中斷允許中斷允許ESET0EX0EX1ET1EA自然優(yōu)先級自然優(yōu)先級高低優(yōu)先控制優(yōu)先控制PSPT0PX0PX1PT1MCS-51MCS
13、-51的中斷系統(tǒng)之寄存器的中斷系統(tǒng)之寄存器 TF1 TF0 IE1 IT1 IE0 IT0TCONT1溢出中斷標志溢出中斷標志(TCON.7): T1啟動計數(shù)后,計滿溢出由硬件置位TF1=1,向CPU請求中斷,此標志一直保持到CPU響應(yīng)中斷后,才由硬件自動清0。也可用軟件查詢該標志,并由軟件清0。76543210TCON寄存器T0和T1控制寄存器 TF1 TF0 IE1 IT1 IE0 IT0TCON 88H外部中斷外部中斷INT1中斷標志中斷標志位位(TCON.3) : IE11,外部中斷1向CPU申請中斷 外部中斷外部中斷INT1觸發(fā)方觸發(fā)方式控制位式控制位(TCON.2): IT1=0,
14、電平觸發(fā)方式 IT1=1, 下降沿觸發(fā)方式76543210注意:該寄存器可以位尋址注意:該寄存器可以位尋址 TI (SCON.1)串行發(fā)送中斷標志。 RI (SCON.0)串行接收中斷標志。 TI RISCON寄存器串行口控制寄存器SCON 98H76543210注意:該寄存器可以位尋址注意:該寄存器可以位尋址IE寄存器中斷允許寄存器 IE A8H EA ESET1EX1 ET0EX0例:允許定時器T0中斷: SETB EA SETB ET0 或 MOV IE,#82H76543210注意:該寄存器可以位尋址 5151單片機有兩個中斷優(yōu)先級單片機有兩個中斷優(yōu)先級高級和低級高級和低級 專用寄存器
15、專用寄存器IPIP為中斷優(yōu)先級寄存器,用戶可用軟件設(shè)定為中斷優(yōu)先級寄存器,用戶可用軟件設(shè)定 相應(yīng)位為相應(yīng)位為1 1,對應(yīng)的中斷源被設(shè)置為,對應(yīng)的中斷源被設(shè)置為高優(yōu)先級高優(yōu)先級,相應(yīng)位為,相應(yīng)位為0 0,對,對應(yīng)的中斷源被設(shè)置為低優(yōu)先級應(yīng)的中斷源被設(shè)置為低優(yōu)先級 系統(tǒng)復(fù)位時,均為低優(yōu)先級系統(tǒng)復(fù)位時,均為低優(yōu)先級 該寄存器可以位尋址該寄存器可以位尋址 PSPT1PX1PT0PX0IP寄存器中斷優(yōu)先級寄存器 IP B8H 765432101IT0 0IT0 1INT0T0T1TXRXTCONIEEX0EAIPPX01111100000PSPT1PX1PT0SCON中斷標志源允許總允許硬件查詢矢量地址
16、矢量地址自然優(yōu)先級自然優(yōu)先級IT1 0IT1 1INT1IE0TF0IE1TF1TIRIEX0EX11ET1ES優(yōu)先級高級中斷請求PC低級中斷請求PC中斷處理過程 中斷處理過程分為三個階段:中斷處理過程分為三個階段:中斷響應(yīng)、中斷中斷響應(yīng)、中斷處理和中斷返回。處理和中斷返回。 中斷響應(yīng)中斷響應(yīng) 中斷處理中斷處理( (又稱中斷服務(wù)又稱中斷服務(wù)) ) 中斷返回中斷返回 中斷請求的撤除中斷請求的撤除 中斷響應(yīng)中斷返回中斷響應(yīng)中斷響應(yīng)( (以外部中斷以外部中斷0 0為例為例) )中斷響應(yīng):在滿足中斷響應(yīng):在滿足CPUCPU的中斷的中斷響應(yīng)條件響應(yīng)條件之后,之后,CPUCPU對中斷源的對中斷源的中斷請求
17、予以處理。中斷請求予以處理。響應(yīng)條件:響應(yīng)條件:有中斷源發(fā)出中斷請求有中斷源發(fā)出中斷請求EA=1EA=1相應(yīng)中斷源的中斷允許位為相應(yīng)中斷源的中斷允許位為1 1中斷響應(yīng)斷點地址中斷服務(wù)中斷服務(wù)子程序的子程序的入口地址入口地址ORG 0003HAJMP ZD0ZD0中斷響應(yīng)中斷響應(yīng)( (以外部中斷以外部中斷0 0為例為例) )中斷響應(yīng)過程:中斷響應(yīng)過程: 硬件生成長調(diào)用指令硬件生成長調(diào)用指令LCALL addr16保護斷點地址;保護斷點地址;把程序轉(zhuǎn)向中斷服務(wù)程序的把程序轉(zhuǎn)向中斷服務(wù)程序的入口地址入口地址(通常稱矢量通常稱矢量地址地址)。 特別注意:這些工作是硬件自動完成的!特別注意:這些工作是硬
18、件自動完成的!程序存儲器程序存儲器ROMROM0000H:復(fù)位后,程序入口地址(PC=0000H)0023H:串行口中斷入口0003H:外部中斷0入口000BH:定時器0溢出中斷入口0013H:外部中斷1入口001BH:定時器1溢出中斷入口使用時,通常在這些入口地址處存放一條跳轉(zhuǎn)指令,使程序跳轉(zhuǎn)到用戶安排的中斷服務(wù)程序起始地址上去!中斷入口地址中斷入口地址( (矢量地址矢量地址):):程序存儲器程序存儲器ROMROM0000H:復(fù)位后,程序的入口地址復(fù)位后,程序的入口地址(PC=0000H)0023H:串行口中斷入口串行口中斷入口0003H:外部中斷外部中斷0入口入口000BH:定時器定時器0
19、溢出中斷入口溢出中斷入口0013H:外部中斷外部中斷1入口入口001BH:定時器定時器1溢出中斷入口溢出中斷入口002AHAJMP MAINAJMP NT0AJMP WINT0AJMP WINT1AJMP NT0AJMP SEIR中斷標志的撤除 定時/計數(shù)器中斷請求的撤銷硬件自動撤銷 外部中斷請求的撤銷 邊沿觸發(fā)方式: 中斷標志位(IE0或IE1)的清零:硬件自動完成 外部中斷信號的撤銷:自動撤銷 電平方式: 中斷標志位(IE0或IE1)的清零:硬件自動完成 外部中斷信號的撤銷:系統(tǒng)中增加電路(見書),軟硬件相結(jié)合 串行口中斷請求的撤銷:軟件撤銷中斷服務(wù)及返回中斷服務(wù)及返回中斷服務(wù):從中斷服務(wù)
20、的第一條指令開始帶返回指令為止,注意以下幾點中斷入口地址內(nèi)放一條長轉(zhuǎn)移指令LJMP執(zhí)行中斷服務(wù)子程序時要注意保護現(xiàn)場執(zhí)行當(dāng)前中斷時若要禁止高優(yōu)先級中斷,應(yīng)先軟件關(guān)閉CPU中斷,在中斷返回時再開放中斷中斷返回:最后一條指令必須為RETI中斷響應(yīng)時間中斷響應(yīng)時間 CPUCPU不是在任何情況下都對中斷請求立即響不是在任何情況下都對中斷請求立即響應(yīng),不同的情況對中斷響應(yīng)的時間也不同。應(yīng),不同的情況對中斷響應(yīng)的時間也不同。 例如:外部中斷請求信號的電平在每個機器例如:外部中斷請求信號的電平在每個機器周期的周期的S5P2S5P2期間,經(jīng)反相后鎖存到期間,經(jīng)反相后鎖存到IE0IE0或或IE1IE1標志標志位
21、,位,CPUCPU在下一個機器周期才會查詢到這些值,這在下一個機器周期才會查詢到這些值,這時如果滿足響應(yīng)條件,時如果滿足響應(yīng)條件,CPUCPU響應(yīng)中斷時,需執(zhí)行一響應(yīng)中斷時,需執(zhí)行一條兩個機器周期的調(diào)用指令,以轉(zhuǎn)到相應(yīng)的中斷條兩個機器周期的調(diào)用指令,以轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序入口。服務(wù)程序入口。 這樣,從外部中斷請求有效到開始執(zhí)行中斷這樣,從外部中斷請求有效到開始執(zhí)行中斷服務(wù)程序的第一條指令,至少需要服務(wù)程序的第一條指令,至少需要3 3個機器周期。個機器周期。 如果在申請中斷時,如果在申請中斷時,CPUCPU正在處理最長指令正在處理最長指令( (如乘、除法指令如乘、除法指令) ),則額外等待時間
22、增加,則額外等待時間增加3 3個機器個機器周期;若正在執(zhí)行周期;若正在執(zhí)行RETIRETI或訪問或訪問IEIE、IPIP指令,則額指令,則額外等待時間又增加外等待時間又增加2 2個機器周期。個機器周期。 這樣,若系統(tǒng)中只有一個中斷源,則響應(yīng)時這樣,若系統(tǒng)中只有一個中斷源,則響應(yīng)時間為間為3 38 8個機器周期。個機器周期。 如果系統(tǒng)中有多個中斷源并且同時請求中斷如果系統(tǒng)中有多個中斷源并且同時請求中斷時,則最低級的中斷的響應(yīng)時間會更長。時,則最低級的中斷的響應(yīng)時間會更長。中斷服務(wù)程序的設(shè)計中斷服務(wù)程序的設(shè)計中斷程序設(shè)計的基本任務(wù):中斷程序設(shè)計的基本任務(wù): 設(shè)置中斷允許控制寄存器設(shè)置中斷允許控制寄
23、存器IE 設(shè)置中斷優(yōu)先級寄存器設(shè)置中斷優(yōu)先級寄存器IP 若是外部中斷源,需要設(shè)置中斷請求的觸若是外部中斷源,需要設(shè)置中斷請求的觸發(fā)方式發(fā)方式IT0或或IT1 編寫中斷服務(wù)程序,處理中斷請求編寫中斷服務(wù)程序,處理中斷請求注意:前三點一般放在注意:前三點一般放在初始化程序段初始化程序段中中例:多個故障顯示報警例:多個故障顯示報警 當(dāng)系統(tǒng)無故障時,當(dāng)系統(tǒng)無故障時,4個故障源輸入端個故障源輸入端X1X4全為低電平,顯示全為低電平,顯示燈全滅,當(dāng)某部分出現(xiàn)燈全滅,當(dāng)某部分出現(xiàn)故障,其對應(yīng)的輸入由故障,其對應(yīng)的輸入由低電平變?yōu)楦唠娖剑瑥牡碗娖阶優(yōu)楦唠娖?,從而引起而引起MCS-51單片機單片機中斷,中斷程序
24、的任務(wù)中斷,中斷程序的任務(wù)是判定故障源,并用對是判定故障源,并用對應(yīng)的發(fā)光二極管應(yīng)的發(fā)光二極管LED1LED4進行顯進行顯示。示。100編程如下:編程如下: ORG 0000HORG 0000H AJMP MAIN AJMP MAIN ORG 0003H ORG 0003H AJMP SERVE AJMP SERVE;外部中斷服務(wù)程序;外部中斷服務(wù)程序MAIN: ORL P1,#0FFH ;燈全滅,準備讀入;燈全滅,準備讀入 SETB IT0 ;選擇邊沿方式;選擇邊沿方式 SETB EX0 ;允許;允許INT0中斷中斷 SETB EA ;CPU開中斷開中斷 AJMP $ ;等待中斷;等待中斷S
25、ERVE:JNB P1.3,Ll CLR P1.4 ;若;若X1有故障,有故障,LEDl亮亮L1: JNB P1.2,L2 CLR P1.5 ;若;若X2有故障,有故障, LED2亮亮L2: JNB P1.1,L3 CLR P1.6 ;若;若X3有故障有故障 ,LED3亮亮L3: JNB P1.0 L4 CLR P1.7 ;若;若X4有故障,有故障, LED4亮亮L4: RETI1 1、中斷究竟要解決什么問題?、中斷究竟要解決什么問題?2 2、就你的理解,用圖示方法描述主程序與中斷服務(wù)程序、就你的理解,用圖示方法描述主程序與中斷服務(wù)程序之間的關(guān)系。之間的關(guān)系。3 3、熟記、熟記5 5個中斷入口
26、地址。個中斷入口地址。主要解決快速的主要解決快速的CPU和慢速的外設(shè)之間的矛盾,以提高和慢速的外設(shè)之間的矛盾,以提高CPU的工作效率。的工作效率。0003H、000BH、0013H、001BH、0023HRETI 子程序SUB 主程序MAINLCALL SUB 結(jié)束 1 1、利用定時器作外部中斷源。、利用定時器作外部中斷源。 MCS-51MCS-51單片機有兩個定時器計數(shù)器,當(dāng)單片機有兩個定時器計數(shù)器,當(dāng)它們選擇計數(shù)工作方式時,它們選擇計數(shù)工作方式時,T0T0或或T1T1引腳上的負跳引腳上的負跳變將使變將使T0T0或或T1T1計數(shù)器加計數(shù)器加1 1計數(shù),故若把定時器計計數(shù),故若把定時器計數(shù)器設(shè)
27、置成計數(shù)工作方式,計數(shù)初始設(shè)定為滿量數(shù)器設(shè)置成計數(shù)工作方式,計數(shù)初始設(shè)定為滿量程,一旦外部從計數(shù)引腳輸入一個負跳變信號,程,一旦外部從計數(shù)引腳輸入一個負跳變信號,計數(shù)器計數(shù)器T0T0或或T1T1加加1 1產(chǎn)生溢出中斷,這樣,便可把外產(chǎn)生溢出中斷,這樣,便可把外部計數(shù)輸入端部計數(shù)輸入端T0(P3T0(P34)4)或或T1(P3T1(P35)5)擴充作為外擴充作為外部中斷源輸入。部中斷源輸入。中斷應(yīng)用舉例中斷應(yīng)用舉例 例如:將例如:將T1T1設(shè)置為工作方式設(shè)置為工作方式2(2(自動恢復(fù)常數(shù)自動恢復(fù)常數(shù)) )及外部計數(shù)方式,計數(shù)器及外部計數(shù)方式,計數(shù)器THlTHl、TLlTLl初值設(shè)置為初值設(shè)置為F
28、FHFFH,當(dāng)計數(shù)輸入端當(dāng)計數(shù)輸入端T1(P3T1(P35)5)發(fā)生一次負跳變,計數(shù)器發(fā)生一次負跳變,計數(shù)器加加1 1并產(chǎn)生溢出標志,向并產(chǎn)生溢出標志,向CPUCPU申請中斷,中斷處理申請中斷,中斷處理程序使累加器程序使累加器A A內(nèi)容加內(nèi)容加1 1,送,送P1P1口輸出,然后返回口輸出,然后返回主程序。主程序。TMOD=60H 為了讓為了讓T1 的輸入端的輸入端(P3(P35)5)輸入輸入1個脈沖,個脈沖,T1發(fā)出中斷發(fā)出中斷請求,計數(shù)初值應(yīng)設(shè)置成請求,計數(shù)初值應(yīng)設(shè)置成FFH,即,即TL1=FFH。 設(shè)置初值的方法是:設(shè)置初值的方法是:MOV TL1,#0FFH 由于由于T1的工作方式為方式
29、的工作方式為方式2,TL1計數(shù)滿后計數(shù)滿后TH1的值是自的值是自動裝入動裝入TL1,所以,所以TH1也應(yīng)設(shè)置成也應(yīng)設(shè)置成FFH,即,即TH1=FFH。 設(shè)置初值的方法是:設(shè)置初值的方法是:MOV TH1,#0FFH啟動啟動T1T1計數(shù)的方法是計數(shù)的方法是SETB TRl允許允許T1T1中斷的方法是中斷的方法是SETB ET1 CPU CPU 開中斷的方法是開中斷的方法是SETB EA編程如下:編程如下: ORG 0000H ORG 0000H ;用戶程序首址;用戶程序首址 AJMP MAIN AJMP MAIN ;轉(zhuǎn)主程序;轉(zhuǎn)主程序 ORG 001BHORG 001BH AJMP INT AJ
30、MP INT ;轉(zhuǎn)中斷服務(wù)程序;轉(zhuǎn)中斷服務(wù)程序 ORG 1FF2HORG 1FF2HMAINMAIN: MOV SPMOV SP,#53H #53H ;堆棧指針賦初值;堆棧指針賦初值 MOV TMODMOV TMOD,#60H #60H ;T1T1方式方式2 2,計數(shù),計數(shù) MOV T L1MOV T L1,#0FFH #0FFH ;送常數(shù);送常數(shù) MOV TH1MOV TH1,#0FFH#0FFH SETB TRl SETB TRl ;啟動;啟動T1T1計數(shù)計數(shù) SETB ET1 SETB ET1 ;允許;允許T1T1中斷中斷 SETB EA SETB EA ;CPUCPU開中斷開中斷LOOPLOOP: SJMP LOOP SJMP LOOP ;等待;等待 ORG 3000HORG 3000HINTINT: INC A INC A ;T1T1中斷處理程序中斷處理程序 MOV P1MOV P1,A A RETI RETI ;中斷返回;中斷返回 2 2、利用定時器、利用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年帶家私家電房產(chǎn)買賣合同(三篇)
- 2024年大學(xué)學(xué)習(xí)部工作計劃樣本(三篇)
- 2024年小學(xué)教師個人總結(jié)樣本(二篇)
- 2024年各種公共場所的衛(wèi)生管理制度樣本(二篇)
- 2024年工廠質(zhì)檢員崗位職責(zé)說明范本(二篇)
- 2024年半年工作總結(jié)(四篇)
- 2024年員工入股協(xié)議范本(二篇)
- 2024年學(xué)校美術(shù)教學(xué)工作計劃模版(四篇)
- 2024年衛(wèi)生管理制度制度(四篇)
- 【《房建工程施工管理中精細化管理運用探析》3200字】
- 中考名著《紅星照耀中國》練習(xí)題
- 幼兒園戶外自主游戲
- 浙教版勞動教育二年級上冊項目三 任務(wù)二廢舊物品巧利用教學(xué)課件含微課視頻
- 遼寧省沈陽市四十三中學(xué)教育集團2023-2024學(xué)年七年級上學(xué)期期中地理試題
- LCM出貨檢驗標準
- 江蘇開放大學(xué)2023年秋《馬克思主義基本原理 060111》形成性考核作業(yè)2-實踐性環(huán)節(jié)(占過程性考核成績的30%)參考答案
- 公司2023年消防安全資金投入計劃和預(yù)算方案
- 設(shè)備試機(驗收)報告
- 石材廠設(shè)計方案范本
- GB/T 43153-2023居家養(yǎng)老上門服務(wù)基本規(guī)范
- 社會主義發(fā)展歷程-PPT
評論
0/150
提交評論