Interrupt單片機中斷系統(tǒng).ppt_第1頁
Interrupt單片機中斷系統(tǒng).ppt_第2頁
Interrupt單片機中斷系統(tǒng).ppt_第3頁
Interrupt單片機中斷系統(tǒng).ppt_第4頁
Interrupt單片機中斷系統(tǒng).ppt_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2020 2 9 1 中斷系統(tǒng) 2020 2 9 2 中斷系統(tǒng)有什么用 中斷系統(tǒng)怎樣構成 如何工作 2020 2 9 3 80C51的中斷系統(tǒng) 80C51的中斷系統(tǒng)結構 一 中斷的概念CPU在處理某一事件A時 發(fā)生了另一事件B請求CPU迅速去處理 中斷發(fā)生 CPU暫時中斷當前的工作 轉去處理事件B 中斷響應和中斷服務 待CPU將事件B處理完畢后 再回到原來事件A被中斷的地方繼續(xù)處理事件A 中斷返回 這一過程稱為中斷 2020 2 9 4 生活中的中斷了解幾個概念 中斷源 中斷標志 中斷優(yōu)先級別 某宅男正在游戲 座機響了 接電話 與朋友聊天 繼續(xù)游戲 2020 2 9 5 某宅男正在游戲 座機響了 接電話 繼續(xù)聊天 繼續(xù)游戲 水開了 跑向廚房 關煤氣 灌開水 2020 2 9 6 某宅男正在游戲 座機響了 女朋友電話 接電話 繼續(xù)聊天 繼續(xù)游戲 水開了 不重要 跑向廚房 關煤氣 灌開水 2020 2 9 7 MCS 51單片機的中斷系統(tǒng)結構 執(zhí)行主程序 主程序 繼續(xù)執(zhí)行主程序 斷點 中斷請求 中斷響應 執(zhí)行中斷處理程序 中斷返回 2020 2 9 8 引起CPU中斷的根源 稱為中斷源 中斷源向CPU提出的中斷請求 CPU暫時中斷原來的事務A 轉去處理事件B 對事件B處理完畢后 再回到原來被中斷的地方 即斷點 稱為中斷返回 實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng) 中斷機構 與調用子程序有區(qū)別嗎 2020 2 9 9 隨著計算機技術的應用 人們發(fā)現(xiàn)中斷技術不僅解決了快速主機與慢速I O設備的數(shù)據(jù)傳送問題 而且還具有如下優(yōu)點 分時操作 CPU可以分時為多個I O設備服務 提高了計算機的利用率 實時響應 CPU能夠及時處理應用系統(tǒng)的隨機事件 系統(tǒng)的實時性大大增強 可靠性高 CPU具有處理設備故障及掉電等突發(fā)性事件能力 從而使系統(tǒng)可靠性提高 2020 2 9 10 二 80C51中斷系統(tǒng)的結構80C51的中斷系統(tǒng)有5個中斷源 8052有6個 2個優(yōu)先級 可實現(xiàn)二級中斷嵌套 2020 2 9 11 5 1 280C51的中斷源一 中斷源 2020 2 9 12 1 INT0 P3 2 可由IT0 TCON 0 選擇其為低電平有效還是下降沿有效 當CPU檢測到P3 2引腳上出現(xiàn)有效的中斷信號時 中斷標志IE0 TCON 1 置1 向CPU申請中斷 2020 2 9 13 2 INT1 P3 3 可由IT1 TCON 2 選擇其為低1電平有效還是下降沿有效 當CPU檢測到P3 3引腳上出現(xiàn)有效的中斷信號時 中斷標志IE1 TCON 3 置1 向CPU申請中斷 2020 2 9 14 3 TF0 TCON 5 片內定時 計數(shù)器T0溢出中斷請求標志 當定時 計數(shù)器T0發(fā)生溢出時 置位TF0 并向CPU申請中斷 2020 2 9 15 4 TF1 TCON 7 片內定時 計數(shù)器T1溢出中斷請求標志 當定時 計數(shù)器T1發(fā)生溢出時 置位TF1 并向CPU申請中斷 2020 2 9 16 5 RI SCON 0 或TI SCON 1 串行口中斷請求標志 當串行口接收完一幀串行數(shù)據(jù)時置位RI或當串行口發(fā)送完一幀串行數(shù)據(jù)時置位TI 向CPU申請中斷 2020 2 9 17 二 中斷請求標志1 TCON的中斷標志 IT0 TCON 0 外部中斷0觸發(fā)方式控制位 當IT0 0時 為電平觸發(fā)方式 當IT0 1時 為邊沿觸發(fā)方式 下降沿有效 IE0 TCON 1 外部中斷0中斷請求標志位 IT1 TCON 2 外部中斷1觸發(fā)方式控制位 IE1 TCON 3 外部中斷1中斷請求標志位 TF0 TCON 5 定時 計數(shù)器T0溢出中斷請求標志位 TF1 TCON 7 定時 計數(shù)器T1溢出中斷請求標志位 2020 2 9 18 2 SCON的中斷標志 RI SCON 0 串行口接收中斷標志位 當允許串行口接收數(shù)據(jù)時 每接收完一個串行幀 由硬件置位RI 同樣 RI必須由軟件清除 TI SCON 1 串行口發(fā)送中斷標志位 當CPU將一個發(fā)送數(shù)據(jù)寫入串行口發(fā)送緩沖器時 就啟動了發(fā)送過程 每發(fā)送完一個串行幀 由硬件置位TI CPU響應中斷時 不能自動清除TI TI必須由軟件清除 2020 2 9 19 一 中斷允許控制CPU對中斷系統(tǒng)所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的 5 1 380C51中斷的控制 EX0 IE 0 外部中斷0允許位 ET0 IE 1 定時 計數(shù)器T0中斷允許位 EX1 IE 2 外部中斷0允許位 ET1 IE 3 定時 計數(shù)器T1中斷允許位 ES IE 4 串行口中斷允許位 EA IE 7 CPU中斷允許 總允許 位 2020 2 9 20 二 中斷優(yōu)先級控制80C51單片機有兩個中斷優(yōu)先級 即可實現(xiàn)二級中斷服務嵌套 每個中斷源的中斷優(yōu)先級都是由中斷優(yōu)先級寄存器IP中的相應位的狀態(tài)來規(guī)定的 PX0 IP 0 外部中斷0優(yōu)先級設定位 PT0 IP 1 定時 計數(shù)器T0優(yōu)先級設定位 PX1 IP 2 外部中斷0優(yōu)先級設定位 PT1 IP 3 定時 計數(shù)器T1優(yōu)先級設定位 PS IP 4 串行口優(yōu)先級設定位 PT2 IP 5 定時 計數(shù)器T2優(yōu)先級設定位 2020 2 9 21 同一優(yōu)先級中的中斷申請不止一個時 則有中斷優(yōu)先權排隊問題 同一優(yōu)先級的中斷優(yōu)先權排隊 由中斷系統(tǒng)硬件確定的自然優(yōu)先級形成 其排列如所示 2020 2 9 22 80C51單片機的中斷優(yōu)先級有三條原則 CPU同時接收到幾個中斷時 首先響應優(yōu)先級別最高的中斷請求 正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷 正在進行的低優(yōu)先級中斷服務 能被高優(yōu)先級中斷請求所中斷 2020 2 9 23 5 280C51單片機中斷處理過程 一 中斷響應條件中斷源有中斷請求 此中斷源的中斷允許位為1 CPU開中斷 即EA 1 同時滿足時 CPU才有可能響應中斷 5 2 1中斷響應條件和時間 2020 2 9 24 中斷服務的進入 CPU執(zhí)行程序過程中 在每個機器周期的S5P2期間 中斷系統(tǒng)對各個中斷源進行采樣 這些采樣值在下一個機器周期內按優(yōu)先級和內部順序被依次查詢 如果某個中斷標志在上一個機器周期的S5P2時被置成了1 那么它將于現(xiàn)在的查詢周期中及時被發(fā)現(xiàn) 接著CPU便執(zhí)行一條由中斷系統(tǒng)提供的硬件LCALL指令 轉向被稱作中斷向量的特定地址單元 進入相應的中斷服務程序 2020 2 9 25 遇以下任一條件 硬件將受阻 不產生LCALL指令 CPU正在處理同級或高優(yōu)先級中斷 當前查詢的機器周期不是所執(zhí)行指令的最后一個機器周期 即在完成所執(zhí)行指令前 不會響應中斷 從而保證指令在執(zhí)行過程中不被打斷 正在執(zhí)行的指令為RET RETI或任何訪問IE或IP寄存器的指令 即只有在這些指令后面至少再執(zhí)行一條指令時才能接受中斷請求 若由于上述條件的阻礙中斷未能得到響應 當條件消失時該中斷標志卻已不再有效 那么該中斷將不被響應 就是說 中斷標志曾經有效 但未獲響應 查詢過程在下個機器周期將重新進行 2020 2 9 26 執(zhí)行一條硬件LCALL指令 即把程序計數(shù)器PC的內容壓入堆棧保存 再將相應的中斷服務程序的入口地址送入PC 執(zhí)行中斷服務程序 5 2 2中斷響應過程 中斷響應過程的前一步是由中斷系統(tǒng)內部自動完成的 而中斷服務程序則要由用戶編寫程序來完成 2020 2 9 27 5 2 3中斷返回 RETI指令的具體功能是 將中斷響應時壓入堆棧保存的斷點地址從棧頂彈出送回PC CPU從原來中斷的地方繼續(xù)執(zhí)行程序 將相應中斷優(yōu)先級狀態(tài)觸發(fā)器清0 通知中斷系統(tǒng) 中斷服務程序已執(zhí)行完畢 注意 不能用RET指令代替RETI指令 在中斷服務程序中PUSH指令與POP指令必須成對使用 否則不能正確返回斷點 2020 2 9 28 應用舉例例1 利用定時 計數(shù)器T0的方式1 產生10ms的定時 并使P1 0引腳上輸出周期為20ms的方波 采用中斷方式 設系統(tǒng)時鐘頻率為12MHz 計算計數(shù)初值X 由于晶振為12MHz 所以機器周期Tcy為1 s 所以 N t Tcy 10 10 3 1 10 6 10000X 65536 10000 55536 D8F0H即應將D8H送入TH0中 F0H送入TL0中 2020 2 9 29 ORG0000HLJMPMAIN 跳轉到主程序ORG000BH T0的中斷入口地址LJMPDVT0 轉向中斷服務程序ORG0100HMAIN MOVTMOD 01H 置T0工作于方式1MOVTH0 0D8H 裝入計數(shù)初值MOVTL0 0F0HSETBET0 T0開中斷SETBEA CPU開中斷SETBTR0 啟動T0SJMP 等待中斷DVT0 CPLP1 0 P1 0取反輸出MOVTH0 0D8H 重新裝入計數(shù)值MOVTL0 0F0HRETI 中斷返回END 2020 2 9 30 練習 選擇T1方式2用于定時 在P1 1輸出周期為1ms的方波 晶振f 6MHz 使用中斷方式 計算初值 X 6D 06H TH1 06H TL1 06H 2020 2 9 31 例3 時鐘頻率為12MHz 編程實現(xiàn) P1 1引腳上輸出周期為1s 占空比為20 的脈沖信號 分析 程序 ORG0000HLJMPMAINORG000BHLJMPT0INTORG0030HMAIN MOVSP 60HMOVR7 0 MOVTMOD 01HMOVTH0 D8HMOVTL0 F0HSETBEASETBET0SETBTR0SJMP 2020 2 9 32 例2 試編程 使P1 7口相連的發(fā)光二極管按照一外部脈沖的節(jié)奏閃爍 電路圖在P106 ORG0000HLJMP

溫馨提示

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

評論

0/150

提交評論