第5章 STC15F2K60S2單片機中斷系統.ppt_第1頁
第5章 STC15F2K60S2單片機中斷系統.ppt_第2頁
第5章 STC15F2K60S2單片機中斷系統.ppt_第3頁
第5章 STC15F2K60S2單片機中斷系統.ppt_第4頁
第5章 STC15F2K60S2單片機中斷系統.ppt_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第5章STC15F2K60S2單片機中斷系統,5.1中斷概念5.2STC15F2K60S2單片機中斷系統結構5.3中斷許可及其優(yōu)先級管理5.4單片機中斷處理5.1中斷的概念,在單片機應用系統中,中斷技術主要用于實時監(jiān)測和控制,能夠及時處理外界發(fā)生的事件。 設置中斷系統是為了使CPU具有針對外部緊急事件的處理能力。 當中央處理器的CPU正在處理某些事件時,外部發(fā)出緊急事件請求,使CPU中斷當前工作,處理該緊急事件,處理結束后返回原中斷的位置(斷點),繼續(xù)原工作的過程。 實現此功能的部件稱為中斷系統,請求CPU中斷的請求源稱為中斷源。 此外,單片機的中斷系統具有多個中斷源,如果多個中斷源同時向CPU請求中斷,則系統按照它們的優(yōu)先級進行處理。 也就是說,響應于中斷優(yōu)先級高的中斷源,響應于優(yōu)先級低的中斷源。 例如,當規(guī)定的鍵掃描處理優(yōu)先于顯示器輸出處理時,CPU可以在處理顯示內容時中斷鍵的動作,處理鍵盤掃描問題,并繼續(xù)顯示處理直至掃描結束。 圖5-1中斷響應和處理過程,5.2STC15F2K60S2單片機中斷系統配置,5.2.1中斷源STC15F2K60S2單片機中斷系統共有14個中斷源外部中斷0(INT0 ) 外部中斷1(INT1)、計時器T1中斷、串行1中斷、A/D轉換中斷、低壓檢測中斷(LVD )、CCP/PWM/PCA中斷、串行2中斷、SPI中斷、外部中斷2 ()、外部中斷3 ()、計時器T2中斷、外部中斷4 ()。 外部中斷2 ()、外部中斷3 ()、計時器T2中斷、外部中斷4 ()等4個中斷源固定為最低優(yōu)先級中斷,其他中斷源有2個中斷優(yōu)先級,可嵌套第2級中斷服務程序。STC15F2K60S2單片機中斷系統的結構圖如圖5-2所示。 這些中斷源與特殊功能寄存器TCON、SCON、S2CON、CCON、PCON、ADC_CONTR、IE、IE2、INT_CLKO、IP等有關,以下首先介紹與中斷源有關的寄存器功能。 此外,STC15F2K60S2單片機中斷系統的結構圖,5.2.2中斷源標志寄存器1.TCON寄存器是定時/計數器T0、T1的控制寄存器,該寄存器是T0和T1的溢出中斷請求標志位TF0 也包含外部中斷0(INT0)和外部中斷1(INT1)的中斷請求標志位IE0和IE1以及外部中斷0和外部中斷1的中斷源的觸發(fā)方式。 TCON寄存器的字節(jié)地址是88H,可具有比特地址,其格式如下: TF1:定時/計數器T1的溢出中斷標志比特。 啟動T1計數時,從初始值開始計數,發(fā)生溢出時,硬件設置TF1,向CPU請求中斷,一直保持到CPU響應中斷為止,硬件清零,TF1軟件也清零。 TR1 :定時/計數器T1的運行控制位。 TR1為1時運行,0時停止運行。 TF0 :定時/計數器T0溢出中斷標志。 其功能與TF1相似。 TR0 :定時/計數器T0的運行控制位。 其功能與TR1類似。IE1 :外部中斷1請求源(INT1/P3.3 )標志位。 當ie-1是1時,外部中斷1請求CPU中斷,并且當CPU響應于該中斷時,硬件清除ie-1。 IT1 :選擇外部中斷1中斷觸發(fā)方式位,IT1為0時,INT1/P3.3端子上的上升沿或下降沿可觸發(fā)外部中斷1。 IT1為1時,采用下降沿觸發(fā)方式。 IE0 :外部中斷0請求源(INT0/P3.2 )標志位。 類似于IE1的功能。 IT0 :選擇外部中斷0中斷觸發(fā)方式位,功能與IT1類似。 另外,2.SCON和S2CON寄存器SCON是串行端口1的控制寄存器,其包括串行端口用于收發(fā)中斷的請求標志位TI和RI。 當SCON寄存器的字節(jié)地址為98H時,允許位地址,其形式為:當串行端口1不允許接收,以方式0動作時,在每次接收第8位數據時設置1,以方式1、方式2或方式3動作SM2=0的情況下,在每次接收停止位的中間時設置1,串行端口以方式2或方式3動作,在SM2=1的情況下,在接收到的第9位的數據RI指示接收器已經收到幀數據,串行端口1或者CPU應當向中斷(收到中斷)請求并且RI應當由用戶的中斷服務程序清零。 TI :串行端口1發(fā)送中斷標志。 在串行端口1以方式0發(fā)送情況下,每次發(fā)送8位的數據時,硬件1; 以方式1、方式2或方式3發(fā)送時,在發(fā)送停止比特開始時設置1。 在TI是1的情況下,串行端口正在發(fā)送幀數據,并且串行端口1正在向CPU請求中斷(發(fā)送中斷)。 注意,CPU響應于傳輸中斷請求而在中斷服務程序運行時不把TI清零,TI或者用戶在中斷服務程序期間必須把TI清零。 SCON寄存器的其他位與中斷無關,將在后續(xù)的相關章節(jié)中介紹。 另外,S2CON是串行端口2控制寄存器,字節(jié)地址是9AH,S2CON的各功能與串行端口1控制寄存器SCON相似,其中S2TI和S2RI是串行端口2的收發(fā)中斷標志位。 S2RI :串行端口2接收中斷標志。 串行端口2允許接收,以方式0動作時,在每次接收第8位數據時設置1的方式1、方式2或方式3中動作SM2=0的情況下,在每次接收停止位的中間時設置1的串行端口2以方式2或方式3動作,在S2SM2=1的情況下,接收到的第9位S2RI為1指示串行端口2正在接收幀數據并且向CPU請求中斷(接收中斷),并且S2RI必須通過用戶的中斷服務程序清零。 S2TI :串行端口2發(fā)送中斷標志。 在串行端口2以方式0發(fā)送情況下,每次發(fā)送8位的數據時,硬件1; 以方式1、方式2或方式3發(fā)送時,在發(fā)送停止比特開始時設置1。 S2TI=1指示串行端口2已傳輸幀數據,并且向CPU請求中斷(傳輸中斷)。 注意,CPU在運行中斷服務程序時不能響應于傳輸中斷請求將S2TI清零,而是S2TI應當由用戶在中斷服務程序期間清零。 3.ADC_CONTR寄存器ADC_CONTR是A/D轉換控制寄存器,字節(jié)地址是BCH,ADC_POWER:ADC電源控制位。 ADC_POWER為0時,關閉ADC電源ADC_POWER為1時,打開ADC的電源。 adc _ flag :可用于請求adc轉換中斷的ADC轉換結束標志位。 A/D轉換完成后,ADC_FLAG設置為1,軟件清除0。 不管在A/D轉換完成之后是在該比特申請中發(fā)生中斷還是軟件查詢了該標志比特的A/D轉換完成,當A/D轉換完成時,ADC_FLAG變?yōu)?,必須清除軟件。 ADC_START:ADC轉換開始控制位,設定為1時開始轉換,轉換結束時為0。 在后續(xù)的相關章節(jié)中介紹A/D轉換控制寄存器ADC_CONTR的其它比特,而與中斷無關。 4.PCON寄存器的PCON是用于電源控制寄存器,并且與低壓檢測中斷相關聯地,PCON格式是LVDF :低壓檢測標志位,同時是低壓檢測中斷請求標志位。 在正常操作和空閑操作的狀態(tài)下,當內部操作電壓VCC降到低于低壓檢測閾值電壓時,該位置自動變?yōu)?,這與低壓檢測是否被中止無關。 也就是說,當內部動作電壓VCC低于低壓檢測閾值電壓時,不管是否允許低壓檢測中斷,該比特都會自動變?yōu)?。 在該比特通過軟件清零、清零之后,如果內部操作電壓VCC繼續(xù)下降到低壓檢測閾值電壓以下,則該比特自動設定為1。 在進入停電動作狀態(tài)之前,如果低壓檢測電路不被允許發(fā)生中斷,則在進入停電模式之后,低壓檢測電路不動作,降低功耗。 如果允許低壓檢測中斷的發(fā)生,那么在進入停電模式之后,低壓檢測電路繼續(xù)操作,在內部操作電壓VCC降到低壓檢測閾值電壓之后,發(fā)生低壓檢測中斷,并且MCU可以從停電狀態(tài)恢復。 5.CCON寄存器CCON寄存器是可編程計數器陣列(PCA )模塊控制寄存器,地址為D8H,可進行位地址。 CCON寄存器的型號如下: CF:PCA計數器數組溢出標志位。當PCA計數器溢出時,硬件將CF設置為1。 如果CMOD寄存器的ECF位置是1,則可以利用CF標記來產生中斷。 CF位可以在硬件或軟件中設置為1,但只需在軟件中清零即可。 CR:PCA計數器陣列運行控制位。 當此位為1時,如果啟動PCA計數器陣列計數的此位為0,則關閉PCA計數器。 CCF2:PCA模塊2中斷標志。 如果發(fā)生匹配或捕獲,則此位由硬件1設置。 該位必須在軟件中清零。 CCF1:PCA模塊1中斷標志。 與CCF2功能相似。 CCF0:PCA模塊0中斷標志。 與CCF2功能相似。 6.SPSTAT寄存器SPSTAT寄存器為SPI狀態(tài)寄存器,地址為CDH。 SPIF:SPI傳輸完成標志。 在一次串行傳輸完成之后,將SPIF設置為1,并且如果SPI中斷導通(ESPI=1,EA=1),則出現中斷。 SPI在主模式下SSIG=0時,通過輸入驅動為低電平時,SPIF也設置表示“模式變更”的1。 軟件通過寫入1來清除SPIF標志。 WCOL:SPI寫入沖突標志。 在數據傳輸中對SPI數據寄存器SPDAT執(zhí)行寫入時,WCOL設置為1,WCOL標志通過從軟件寫入1而清除0。 此外,使用單片機的外部中斷0和外部中斷1,在外部中斷0發(fā)出中斷請求之后點亮藍色LED燈,在外部中斷1發(fā)出中斷請求之后點亮黃色LED燈。 在信號同時到達的條件下,如果需要先點亮該LED燈,該如何實現? 當兩個中斷請求信號同時到達單片機時,哪個LED指示燈首先亮起? 5.3中斷許可及其優(yōu)先級管理、STC15F2K60S2單片機的中斷許可控制及優(yōu)先級控制分別由中斷許可寄存器IE、IE2、INT_CLKO(AUXR2)和中斷優(yōu)先級控制寄存器IP、IP2等控制。 5.3.1中斷許可寄存器STC15F2K60S2單片機中的各個中斷源是否開放或禁止由內部中斷許可寄存器IE、IE2和INT_CLKO控制。 中斷采用兩階段控制方式,由總中斷和各中斷源分別控制。 EA:CPU的總中斷許可控制位,EA=1,CPU的總打開中斷,EA=0,CPU阻止所有中斷申請。 EA的作用是使中斷成為兩個階段的控制。 也就是說,首先由EA控制各個中斷源,并且由各個中斷源自身的中斷許可比特來控制各個中斷源。 ELVD :低壓檢測中斷許可位。 ELVD=1,允許低壓檢測中斷的ELVD=0,禁止低壓檢測中斷。 EADC:A/D轉換中斷許可位。 EADC=1,允許中斷A/D轉換的EADC=0,禁止中斷A/D轉換。 1、IE寄存器IE寄存器主要負責總中斷許可控制和外部中斷0、外部中斷1、計時器T0、計時器T1、串行1、A/D轉換、低壓檢測等的中斷源中斷許可控制,IE的字節(jié)地址為A8H,可以是位地址。ES :串行端口1中斷許可位。 ES=1,允許串行端口1中斷的ES=0,禁止串行端口1的中斷。 ET1 :定時/計數器T1的溢出中斷允許比特。 ET1=1,允許T1中斷的ET1=0,禁止T1中斷。 EX1:外部中斷1中斷許可位。 EX1=1、允許外部中斷1中斷的EX1=0,禁止外部中斷1中斷。 ET0 :定時/計數器T0的溢出中斷許可比特。 ET0=1,允許T0中斷的ET0=0禁止T0中斷。 EX0 :外部中斷0允許中斷位。 EX0=1,允許外部中斷0中斷禁止EX0=0外部中斷0中斷。ET2 :定時器T2中斷許可比特。 ET2=1時,允許T2中斷的ET2=0,禁止T2中斷。 ESPI:SPI允許中斷位。 ESPI=1,允許SPI中斷的SPI=0,禁止SPI中斷。 ES2 :串行端口2允許中斷位。 ES2=1、允許串行端口2中斷的ES2=0,禁止串行端口2中斷。 STC15F2K60S2單片機復位后,IE和IE2將被清除,所有中斷均被禁止。 若要開放特定的中斷源,必須以程序控制IE和IE2的對應位置1,同時使整體的中斷EA為1。 2.IE2寄存器的地址是AFH,主要負責包括計時器T2、SPI和串行2的中斷源的中斷使能控制。 其形式如下: EX4:外部中斷4 ()中斷許可比特,EX4=1時禁止外部中斷4中斷,EX4=0時禁止外部中斷4中斷,外部中斷4只有下行觸發(fā)。 EX3 :外部中斷3 ()中斷許可位,EX3=1時允許外部中斷3中斷,EX3=0時禁止外部中斷3中斷,外部中斷3只允許下行觸發(fā)。EX2 :外部中斷2 ()中斷許可位,EX2=1時禁止外部中斷2中斷,EX2=0時禁止外部中斷2中斷,外部中斷2只允許下行觸發(fā)。 T2CLKO、T1CLKO、T0CLKO為時鐘輸出控制位,與中斷無關,將在后續(xù)章節(jié)介紹。 3.INT_CLKO寄存器INT_CLKO(AUXR2)是外部中斷2、外部中斷3、外部中斷4中斷許可和時鐘輸出控制寄存器,并且地址為8FH。 其形式如下:在5.3.2中斷優(yōu)先級管理寄存器STC15F2K60S2單片機中,外部中斷2 ()、外部中斷3 ()、外部中斷4 (), 定時器T2中斷等4個中斷源被固定為最低優(yōu)先級中斷的其他中斷源(外部中斷0、定時器T0中斷、外部中斷1、定時器T1中斷、串行1中斷、A/D轉換中斷、低壓檢測中斷(LVD )、CCP/PWM/PCA SPI中斷等)都有2個中斷優(yōu)先級,即高優(yōu)先級和低優(yōu)先級,可以實現2階段的中斷服務程序的嵌套。 中斷源的優(yōu)先順序通過特殊功能寄存器IP和IP2的對應位設定。 下面介紹這兩個優(yōu)先級管理寄存器。PPCA:PCA中斷優(yōu)先級控制位。 在PPCA=0的情況下,PCA中斷為低優(yōu)先級中斷(優(yōu)先級0 ),在PPCA=1的情況下,PCA中斷為高優(yōu)先級中斷(優(yōu)先級1 )。 PLVD :低壓檢測中斷優(yōu)先級控制位。 PLVD=0時,低壓檢測中斷為低優(yōu)先級中斷(優(yōu)先級PLVD=1時,低壓檢測中斷為高優(yōu)先級中斷(優(yōu)先級1 )。 padc

溫馨提示

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

最新文檔

評論

0/150

提交評論