51單片機學習-第六課--Interrupt.ppt_第1頁
51單片機學習-第六課--Interrupt.ppt_第2頁
51單片機學習-第六課--Interrupt.ppt_第3頁
51單片機學習-第六課--Interrupt.ppt_第4頁
51單片機學習-第六課--Interrupt.ppt_第5頁
已閱讀5頁,還剩23頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2020/8/9,1,中斷系統,2020/8/9,2,5.1 80C51的中斷系統,5.1.1 80C51的中斷系統結構,一、中斷的概念 CPU在處理某一事件A時,發生了另一事件B請求CPU迅速去處理(中斷發生); CPU暫時中斷當前的工作,轉去處理事件B(中斷響應和中斷服務); 待CPU將事件B處理完畢后,再回到原來事件A被中斷的地方繼續處理事件A(中斷返回),這一過程稱為中斷 。,2020/8/9,3,MCS-51單片機的中斷系統結構,執行主程序,主程序,繼續執行主程序,斷點,中斷請求,中斷響應,執行中斷處理程序,中斷返回,2020/8/9,4,引起CPU中斷的根源,稱為中斷源。中斷源向C

2、PU提出的中斷請求。CPU暫時中斷原來的事務A,轉去處理事件B。對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現上述中斷功能的部件稱為中斷系統(中斷機構)。,2020/8/9,5,隨著計算機技術的應用,人們發現中斷技術不僅解決了快速主機與慢速I/O設備的數據傳送問題,而且還具有如下優點:,分時操作。CPU可以分時為多個I/O設備服務,提高了計算機的利用率;,實時響應。CPU能夠及時處理應用系統的隨機事件,系統的實時性大大增強;,可靠性高。CPU具有處理設備故障及掉電等突發性事件能力,從而使系統可靠性提高。,2020/8/9,6,二、80C51中斷系統的結構 80C51的

3、中斷系統有5個中斷源(8052有 6個) ,2個優先級,可實現二級中斷嵌套 。,2020/8/9,7,5.1.2 80C51的中斷源 一、中斷源,2020/8/9,8,1、 (P3.2)。可由IT0(TCON.0)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.2引腳上出現有效的中斷信號時,中斷標志IE0(TCON.1)置1,向CPU申請中斷。,2020/8/9,9,2、(P3.3)??捎蒊T1(TCON.2)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.3引腳上出現有效的中斷信號時,中斷標志IE1(TCON.3)置1,向CPU申請中斷。,2020/8/9,10,3、TF0(TC

4、ON.5),片內定時/計數器T0溢出中斷請求標志。當定時/計數器T0發生溢出時,置位TF0,并向CPU申請中斷。,2020/8/9,11,4、TF1(TCON.7),片內定時/計數器T1溢出中斷請求標志。當定時/計數器T1發生溢出時,置位TF1,并向CPU申請中斷。,2020/8/9,12,5、RI(SCON.0)或TI(SCON.1),串行口中斷請求標志。當串行口接收完一幀串行數據時置位RI或當串行口發送完一幀串行數據時置位TI,向CPU申請中斷。,2020/8/9,13,二、中斷請求標志 1、TCON的中斷標志,IT0(TCON.0),外部中斷0觸發方式控制位。 當IT0=0時,為電平觸發

5、方式。 當IT0=1時,為邊沿觸發方式(下降沿有效)。 IE0(TCON.1),外部中斷0中斷請求標志位。 IT1(TCON.2),外部中斷1觸發方式控制位。 IE1(TCON.3),外部中斷1中斷請求標志位。 TF0(TCON.5),定時/計數器T0溢出中斷請求標志位。 TF1(TCON.7),定時/計數器T1溢出中斷請求標志位。,2020/8/9,14,2、SCON的中斷標志,RI(SCON.0),串行口接收中斷標志位。當允許串行口接收數據時,每接收完一個串行幀,由硬件置位RI。同樣,RI必須由軟件清除。 TI(SCON.1),串行口發送中斷標志位。當CPU將一個發送數據寫入串行口發送緩沖

6、器時,就啟動了發送過程。每發送完一個串行幀,由硬件置位TI。CPU響應中斷時,不能自動清除TI,TI必須由軟件清除。,2020/8/9,15,一、中斷允許控制 CPU對中斷系統所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。,5.1.3 80C51中斷的控制,EX0(IE.0),外部中斷0允許位; ET0(IE.1),定時/計數器T0中斷允許位; EX1(IE.2),外部中斷0允許位; ET1(IE.3),定時/計數器T1中斷允許位; ES(IE.4),串行口中斷允許位; EA (IE.7), CPU中斷允許(總允許)位。,2020/8/9,16,二、中斷優先級控制 80C51

7、單片機有兩個中斷優先級,即可實現二級中斷服務嵌套。每個中斷源的中斷優先級都是由中斷優先級寄存器IP中的相應位的狀態來規定的 。,PX0(IP.0),外部中斷0優先級設定位; PT0(IP.1),定時/計數器T0優先級設定位; PX1(IP.2),外部中斷0優先級設定位; PT1(IP.3),定時/計數器T1優先級設定位; PS (IP.4),串行口優先級設定位; PT2 (IP.5) ,定時/計數器T2優先級設定位。,2020/8/9,17,PX0(IPH.0),外部中斷0優先級設定位; PT0(IPH.1),定時/計數器T0優先級設定位; PX1(IPH.2),外部中斷0優先級設定位; PT

8、1(IPH.3),定時/計數器T1優先級設定位; PS (IPH.4),串行口優先級設定位; PT2 (IPH.5) ,定時/計數器T2優先級設定位。,而80C52單片機有四個中斷優先級,即可實現四級中斷服務嵌套。每個中斷源的中斷優先級由中斷優先級寄存器IP和IPH中的相應位的狀態來規定的 。,2020/8/9,18,同一優先級中的中斷申請不止一個時,則有中斷優先權排隊問題。同一優先級的中斷優先權排隊,由中斷系統硬件確定的自然優先級形成,其排列如所示:,2020/8/9,19,設置52單片機的4個中斷源,使他們的優順序為T1,INT1,INT0,T0.,IPH = 0X08;PT1 = 1;,

9、IP = 0X40;PX1 = 1;,2020/8/9,20,80C51單片機的中斷優先級有三條原則:,CPU同時接收到幾個中斷時,首先響應優先級別最高的中斷請求。 正在進行的中斷過程不能被新的同級或低優先級的中斷請求所中斷。 正在進行的低優先級中斷服務,能被高優先級中斷請求所中斷。,為了實現上述后兩條原則,中斷系統內部設有兩個用戶不能尋址的優先級狀態觸發器。其中一個置1,表示正在響應高優先級的中斷,它將阻斷后來所有的中斷請求;另一個置1,表示正在響應低優先級中斷,它將阻斷后來所有的低優先級中斷請求。,2020/8/9,21,5.2 80C51單片機中斷處理過程,一、中斷響應條件 中斷源有中斷

10、請求; 此中斷源的中斷允許位為1; CPU開中斷(即EA=1)。 p115 同時滿足時,CPU才有可能響應中斷。,5.2.1 中斷響應條件和時間,2020/8/9,22,中斷服務的進入: CPU執行程序過程中,在每個機器周期的S5P2期間,中斷系統對各個中斷源進行采樣。這些采樣值在下一個機器周期內按優先級和內部順序被依次查詢。 如果某個中斷標志在上一個機器周期的S5P2時被置成了1,那么它將于現在的查詢周期中及時被發現。接著CPU便執行一條由中斷系統提供的硬件LCALL指令,轉向被稱作中斷向量的特定地址單元,進入相應的中斷服務程序。,2020/8/9,23,遇以下任一條件,硬件將受阻,不產生L

11、CALL指令: CPU正在處理同級或高優先級中斷; 當前查詢的機器周期不是所執行指令的最后一個機器周期。即在完成所執行指令前,不會響應中斷,從而保證指令在執行過程中不被打斷; 正在執行的指令為RET、RETI或任何訪問IE或IP寄存器的指令。即只有在這些指令后面至少再執行一條指令時才能接受中斷請求。,若由于上述條件的阻礙中斷未能得到響應,當條件消失時該中斷標志卻已不再有效,那么該中斷將不被響應。就是說,中斷標志曾經有效,但未獲響應,查詢過程在下個機器周期將重新進行。,2020/8/9,24,二、中斷響應時間,5.2.1 響應時間-從查詢中斷請求標志位到轉向中斷服務入口地址所需的機器周期數。 (

12、1)最快響應時間 以外部中斷的電平觸發為最快。 從查詢中斷請求信號到中斷服務程序需要三個機器周期: 1個周期(查詢)2個周期(長調用LCALL) (2)最長時間 若當前指令是RET、RETI和IP、IE指令,緊接著下一條是乘除指令發生,則最長為8個周期: 2個周期執行當前指令(其中含有1個周期查詢)4個周期乘除指令2個周期長調用8個周期。,2020/8/9,25,將相應的優先級狀態觸發器置1(以阻斷后來的同級或低級的中斷請求)。 執行一條硬件LCALL指令,即把程序計數器PC的內容壓入堆棧保存,再將相應的中斷服務程序的入口地址送入PC。 (P116) 執行中斷服務程序。,5.2.2 中斷響應過

13、程,中斷響應過程的前兩步是由中斷系統內部自動完成的,而中斷服務程序則要由用戶編寫程序來完成。,2020/8/9,26,5.2.3 中斷返回,RETI指令的具體功能是: 將中斷響應時壓入堆棧保存的斷點地址從棧頂彈出送回PC,CPU從原來中斷的地方繼續執行程序; 將相應中斷優先級狀態觸發器清0,通知中斷系統,中斷服務程序已執行完畢。,注意,不能用RET指令代替RETI指令。在中斷服務程序中PUSH指令與POP指令必須成對使用,否則不能正確返回斷點 。,2020/8/9,27,若外部中斷定義為電平觸發方式,中斷標志位的狀態隨CPU在每個機器周期采樣到的外部中斷輸入引腳的電平變化而變化,這樣能提高CPU對外部中斷請求的響應速度。但外部中斷源若有請求,必須把有效的低電平保持到請求獲得響應時為止,不然就會漏掉;而在中斷服務程序結束之前,中斷源又必須撤消其有效的低電平,否則中斷返回之后將再次產生中斷。,電平觸發方式適合于外部中斷輸入以低電平輸入且中斷服務程序能清除外部中斷請求源的情況。例如,并行接口芯片8255的中斷請求線在接受讀或寫操作后即被復位,因此,以其去請求電平觸發方式的中斷比較方便。,2020/8/9,28,若外部中斷定義為邊沿觸發方式,在相繼連續的兩次采樣中,一個周期采樣到外部中斷

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論