第六章中斷PPT課件_第1頁
第六章中斷PPT課件_第2頁
第六章中斷PPT課件_第3頁
第六章中斷PPT課件_第4頁
第六章中斷PPT課件_第5頁
已閱讀5頁,還剩85頁未讀, 繼續免費閱讀

付費下載

下載本文檔

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

文檔簡介

1、微機原理與接口技術微機原理與接口技術第六章第六章 中中 斷斷任課教師: http:/ stc15系列單片機器件手冊等keil vision軟件下載及指導手冊(Helpvision Help) http:/ Software Cx51 編譯器用戶手冊: Cx51編譯器-對傳統和擴展的8051微處理器的優化的C編譯器和庫參考210:45:19第六章第六章 中中 斷斷掌握單片機中斷系統掌握單片機中斷系統掌握單片機中斷處理過程掌握單片機中斷處理過程掌握中斷程序設計掌握中斷程序設計理解中斷使用過程中需要注意的問題理解中斷使用過程中需要注意的問題310:45:19第六章第六章 中中 斷斷6.1 中斷的概念

2、中斷的概念6.2 單片機的中斷系統及其管理單片機的中斷系統及其管理6.2.1 中斷源及其優先級管理中斷源及其優先級管理6.2.2 單片機中斷處理過程單片機中斷處理過程6.2.3 中斷程序編程舉例中斷程序編程舉例6.2.4 中斷使用過程中需要注意的問題中斷使用過程中需要注意的問題410:45:196.1 6.1 中斷的概念中斷的概念中斷是計算機中的一個很重要的技術中斷是計算機中的一個很重要的技術, 它它既和硬件有關,既和硬件有關,也和軟件有關也和軟件有關。正因有了中斷技術,正因有了中斷技術,計算機的控制功能才更加靈活、計算機的控制功能才更加靈活、效率更高效率更高、計算機的發展和應用才更好,、計算

3、機的發展和應用才更好,中斷功能的中斷功能的強弱已成為衡量一臺計算機功能完善與否的重要指標強弱已成為衡量一臺計算機功能完善與否的重要指標。例如,下面的情況下,就需要采用中斷技術。例如,下面的情況下,就需要采用中斷技術。當計算機正在正常運行一個程序段的時候,當計算機正在正常運行一個程序段的時候,若有一緊若有一緊急事件出現急事件出現,又必須,又必須要立即處理這個緊急的事件要立即處理這個緊急的事件;計算機邊工作邊隨時準備處理一個事件,但又計算機邊工作邊隨時準備處理一個事件,但又不確定不確定該事件出現的確切時刻該事件出現的確切時刻,像處理防火防盜事件一樣。,像處理防火防盜事件一樣。510:45:206.

4、1 6.1 中斷的概念中斷的概念u所謂所謂中斷中斷是指是指CPU在在正常執行程序的過程中正常執行程序的過程中, 出現某些事出現某些事件需要立即處理時件需要立即處理時, CPU暫時中止正在執行的程序暫時中止正在執行的程序, 轉去轉去執行執行對某種請求的對某種請求的處理程序處理程序(中斷中斷處理處理(服務服務)程序程序); u當處理程序執行完畢后,當處理程序執行完畢后,CPU再回到先前被暫時中止的再回到先前被暫時中止的程序程序繼續執行。繼續執行。u實現這種功能的部件稱為實現這種功能的部件稱為中斷系統中斷系統,請求,請求CPU中斷的請中斷的請求源稱為求源稱為中斷源中斷源。u中斷源向中斷源向CPU發出

5、發出中斷申請中斷申請,CPU暫停當前工作轉去處暫停當前工作轉去處理中斷源事件稱為理中斷源事件稱為中斷響應中斷響應。對整個事件的處理過程稱。對整個事件的處理過程稱為為中斷服務中斷服務。u事件處理完畢事件處理完畢CPU返回到被中斷的地方稱為返回到被中斷的地方稱為中斷返回中斷返回。u中斷過程示意圖如圖中斷過程示意圖如圖6-1所示:所示:610:45:206.1 6.1 中斷的概念中斷的概念圖圖6-1 中斷過程示意圖中斷過程示意圖7u中斷過程中斷過程:u多個中斷源同時向多個中斷源同時向CPU請請求中斷時求中斷時,就出現了,就出現了CPU應該先響應哪個中斷請求應該先響應哪個中斷請求的問題。的問題。u計算

6、機往往根據中斷源引計算機往往根據中斷源引發事件的輕重緩急為其發事件的輕重緩急為其設設置不同的優先級置不同的優先級,優先級,優先級是計算機對是計算機對中斷源響應次中斷源響應次序序的規定。的規定。u優先級高的中斷請求先響優先級高的中斷請求先響應應,優先級低的中斷請求,優先級低的中斷請求后響應。后響應。10:45:206.1 6.1 中斷的概念中斷的概念中斷的嵌套中斷的嵌套: :CPU CPU 在進行中斷響應時在進行中斷響應時可以可以響應更高級的中斷響應更高級的中斷請求請求,這種情況稱為,這種情況稱為中中斷的嵌套斷的嵌套。需注意需注意: : 引起中斷嵌套引起中斷嵌套的中斷源的優先級一定的中斷源的優先

7、級一定要高于當前響應中斷源要高于當前響應中斷源的優先級的優先級, , 同優先級或同優先級或低優先級中斷源的中斷低優先級中斷源的中斷請求不能引起中斷嵌套。請求不能引起中斷嵌套。 圖圖6-2 中斷嵌套示意圖中斷嵌套示意圖810:45:206.1 6.1 中斷的概念中斷的概念u計算機采用中斷技術計算機采用中斷技術, 大大大大提高了工作效率和處理問題的靈活性提高了工作效率和處理問題的靈活性, 主要表現在主要表現在3個方面:個方面:可可及時處理及時處理控制系統中許多控制系統中許多隨機發生的事件隨機發生的事件;解決了快速解決了快速CPU和慢速外設之間的矛盾和慢速外設之間的矛盾, CPU和外設可并行工作和外

8、設可并行工作;具備了具備了處理故障的能力處理故障的能力,提高了系統自身的可靠性。,提高了系統自身的可靠性。9中中 斷斷調用子程序調用子程序產生時刻是隨機的產生時刻是隨機的程序事先安排好的程序事先安排好的中斷類似主程序調用子程序,但它們又有區別中斷類似主程序調用子程序,但它們又有區別:表表6-1 中斷和調用子程序之間的主要區別中斷和調用子程序之間的主要區別既保護斷點既保護斷點(自動自動), 又保護現場又保護現場(中服程序中服程序)可只保護斷點可只保護斷點(自動自動)處理程序的處理程序的入口地址是單片機硬件確定的入口地址是單片機硬件確定的, 用戶不能改變用戶不能改變(中斷矢量表中斷矢量表: 000

9、3H00BBH)子程序的入口地址是子程序的入口地址是程序編排的程序編排的Flash程序存儲器程序存儲器10:45:20在中斷系統中,還有以下幾個相關概念:在中斷系統中,還有以下幾個相關概念:1開中斷和關中斷開中斷和關中斷中斷的中斷的開放開放(稱稱為為開中斷或中斷開中斷或中斷允許允許)和和中斷的中斷的關閉關閉(稱稱為為關中斷或中斷關中斷或中斷禁止禁止)可通可通過指令過指令設置相關特殊功能設置相關特殊功能寄存器的內容寄存器的內容來來實現實現, 這這是是CPU能否接受中斷請求的能否接受中斷請求的關鍵關鍵。只在。只在開中斷的情開中斷的情況下況下, 才能才能接受中斷源的請求。接受中斷源的請求。106.1

10、 6.1 中斷的概念中斷的概念2堆棧堆棧進入子程序或中斷處理程序后還要進入子程序或中斷處理程序后還要保護要用到的寄保護要用到的寄存器中的值存器中的值, 叫做叫做; 子程序返回或中斷處理返回子程序返回或中斷處理返回前前, 還要能夠還要能夠恢復這些寄存器中的值恢復這些寄存器中的值, 叫做叫做。10:45:20 2堆棧堆棧保護現場保護現場和和恢復現場恢復現場都通過堆棧操作來實現。其中都通過堆棧操作來實現。其中通用通用寄存器的保存和恢復寄存器的保存和恢復需要由堆棧操作指令需要由堆棧操作指令來完成來完成; 返回地址保存與恢復返回地址保存與恢復(斷點保護和恢復斷點保護和恢復)的堆棧操作都的堆棧操作都在相應

11、的子程序在相應的子程序調用調用(LCALL)和和返回指令返回指令(RET,RETI)的操作中的操作中自動完成自動完成的的, 無需用專門的堆棧操作指令。無需用專門的堆棧操作指令。116.1 6.1 中斷的概念中斷的概念圖圖6-3 堆棧示意圖堆棧示意圖PUSH ACCPUSH PSWPUSH 0H; R0壓棧壓棧 POP 0H; R0彈棧彈棧POP PSWPOP ACC10:45:203中斷的響應中斷的響應單片機響應中斷源請求時單片機響應中斷源請求時, 由由中斷系統硬件控制中斷系統硬件控制CPU從主程序轉去從主程序轉去(0003H00BBH)執行中斷服務程序執行中斷服務程序, 同時同時把斷點地址自

12、動送入堆棧進行保護。把斷點地址自動送入堆棧進行保護。4中斷的撤除中斷的撤除在在響應中斷請求后,返回主程序之前,響應中斷請求后,返回主程序之前,該中斷請求該中斷請求標志應該撤除標志應該撤除,否則,單片機執行完中斷服務程序會誤,否則,單片機執行完中斷服務程序會誤判為又發生了中斷請求而錯誤地再次進入中斷服務程序。判為又發生了中斷請求而錯誤地再次進入中斷服務程序。單片機中有些中斷請求標志會單片機中有些中斷請求標志會自動撤除自動撤除,有些不能,有些不能自動撤除,必須靠自動撤除,必須靠用戶使用相應的指令撤除用戶使用相應的指令撤除。126.1 6.1 中斷的概念中斷的概念Flash程序存儲器程序存儲器相應相

13、應中斷請求標志位中斷請求標志位: 置置1 ,清清010:45:206.2 單片機的中斷系統及其管理單片機的中斷系統及其管理6.2.1 中斷源及其優先級管理中斷源及其優先級管理1、中斷源、中斷源 中斷源是指中斷源是指能發出中斷請求,引起中斷的裝置或事件能發出中斷請求,引起中斷的裝置或事件。 IAP15W4K58S4單片機提供單片機提供21個個中斷請求源中斷請求源:5個外部中斷請求個外部中斷請求5個片內定時個片內定時/計數器溢出中斷請求計數器溢出中斷請求4個片內異步串行口個片內異步串行口(UART)中斷請求中斷請求1個個ADC中斷中斷1個個SPI中斷中斷1個低電壓檢測中斷個低電壓檢測中斷1個個PC

14、A中斷。中斷。1個個比較器中斷比較器中斷1個個PWM中斷以及中斷以及1個個PWM異常檢測中斷。異常檢測中斷。13比STC15F2K60S2多2個比STC15F2K60S2多2個STC15F2K60S2無STC15F2K60S2無(STC15F2K60S2有14個中斷)10:45:20141、中斷源、中斷源圖圖6-4 IAP15W4K58S4單片機的中斷系統單片機的中斷系統IE, INT_CLKO, IE2 等等IP, IP2無無EPCA是是10:45:2015圖圖6-4 IAP15W4K58S4單片機的中斷系統單片機的中斷系統1.中中斷斷源源最高優先級中斷最高優先級中斷高低中斷允許控中斷允許控

15、制寄存器制寄存器中斷優先級中斷優先級控制寄存器控制寄存器中斷查詢次序中斷查詢次序IE, INT_CLKO, IE2 等等IP, IP2TCON.1TCON.3中斷標志位中斷標志位IE .IE .EAEA中中斷斷允允許許總總控控制制位位TCON. 5TCON. 7TCON. 0TCON. 2無無EPCAPCA (Programmable Counter Array)最低優先級中斷最低優先級中斷P3.3P3.210:45:21161、中斷源、中斷源圖圖6-4(續上頁續上頁) 最低優先級中斷最高優先級中斷高低中斷允許中斷允許控制寄存器控制寄存器中斷優先級中斷優先級控制寄存器控制寄存器中斷查詢次序中中

16、斷斷請請求求標標志志位位對對用用戶戶不不可可見見中斷標志位中斷標志位P3.0P3.6P3.710:45:21表表6-2 與中斷請求標志有關的特殊功能寄存器與中斷請求標志有關的特殊功能寄存器中斷請求標志位鎖存在寄存器中斷請求標志位鎖存在寄存器TCON, SCON, S2CON, S3CON, S4CON, PCON, CCON, SPSTAT, ADC_CONTR, PWMIF ,PWMFDCR, CMPCR1中中,如表如表6-2:17寄存器寄存器地址地址D7D6D5D4D3D2D1D0復位值復位值TCON88HTF1TR1TF0TR0IE1IT1IE0IT000000000BSCON98HSM

17、0/FESM1SM2RENTB8RB8TIRI00000000BS2CON9AHS2SM0-S2SM2S2RENS2TB8S2RB8S2TIS2RI 0 x000000BS3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI 01000000BS4CON84HS4SM0S4ST4S4SM2S4RENS4TB8S4RB8S4TIS4RI 00000000BPCON87HSMODSMOD0LVDFPOFGF1GF0FDIDL00110000BCCOND8HCFCR-CCF1 CCF000 xxxx00BSPSTATCDHSPIFWCOL-00 xxxxxxBA

18、DC_CONTRBCHADC_POWERSPEED1 SPEED0 ADC_FLAGADC_START CHS2CHS1 CHS0 00000000BPWMIFF6H-CBIFC7IFC6IFC5IFC4IFC3IFC2IF x0000000BPWMFDCRF7H-ENFDFLTFLIOEFDIFDCMP FDIOFDIF xx000000BCMPCR1E6HCMPENCMPIFPIENIEPISNISCMPOECMPRES00000000B10:45:21(1) 外部中斷和定時器的中斷請求標志位:外部中斷和定時器的中斷請求標志位: 定時定時/計數器計數器T0和和T1的控制寄存器的控制寄存器T

19、CON 位號位號D7D6D5D4D3D2D1D0位名稱位名稱TF1TR1TR1TF0TR0TR0IE1IT1IE0IT018該寄存器同時鎖存了該寄存器同時鎖存了T1和和T0的溢出的溢出中斷請求標志中斷請求標志及及外部外部中斷請求標志中斷請求標志。TCON(地址地址88H(可位尋址可位尋址), 復位值復位值00H)各位定義:各位定義:1)IT0: 外部中斷外部中斷0觸發方式控制位??捎绍浖糜|發方式控制位。可由軟件置1或清或清“0” 。 0: INT0/P3.2為為上升上升(下降下降)沿沿均可觸發均可觸發外中斷外中斷0,置置IE0=1。 1: INT0/P3.2為為下降沿下降沿觸發外部中斷觸發外

20、部中斷0, 置位置位IE0。2) IT1: 外部中斷外部中斷1觸發方式控制位,與觸發方式控制位,與IT0類似。類似。10:45:213)IE0:外部中斷:外部中斷0(INT0/P3.2)中斷請求標志。中斷請求標志。外部中斷外部中斷0無論無論哪種觸發方式哪種觸發方式,只要滿足觸發條件,都,只要滿足觸發條件,都會置位會置位IE0=1,由此向,由此向CPU請求中斷。當請求中斷。當CPU響應外部響應外部中斷時,中斷時,由硬件自動清由硬件自動清 “0” IE0。19(1)外部中斷和定時器的中斷請求標志外部中斷和定時器的中斷請求標志 定時定時/計數器計數器T0和和T1的控制寄存器的控制寄存器TCON 位號

21、位號D7D6D5D4D3D2D1D0位名稱位名稱TF1TR1TR1TF0TR0TR0IE1IT1IE0IT04)IE1:外部中斷:外部中斷1 (INT1/P3.3)中斷請求標志中斷請求標志,其意義,其意義和和IE0相同。相同。外部中斷外部中斷1滿足觸發條件滿足觸發條件, 就置位就置位IE1=1, 由此向由此向CPU請請求中斷。當求中斷。當CPU響應外部中斷時響應外部中斷時, 由硬件清由硬件清“0” IE1。10:45:214)TR0:定時:定時/計數器計數器T0啟動啟動/停止控制位停止控制位(TR0=1啟動啟動)。5)TR1:定時:定時/計數器計數器T1啟動啟動/停止控制位,詳細介紹,停止控制

22、位,詳細介紹,請參考請參考“定時器定時器”一章。一章。20(1)定時)定時/計數器計數器T0和和T1的控制寄存器的控制寄存器TCON 位號位號D7D6D5D4D3D2D1D0位名稱位名稱TF1TR1TR1TF0TR0TR0IE1IT1IE0IT06)TF0:定時:定時/計數器計數器T0溢出中斷標志位溢出中斷標志位。T0啟動計數后,從初值開始加啟動計數后,從初值開始加1計數。計數。當計數器產生當計數器產生進位時,由硬件置進位時,由硬件置TF0為為1,向,向CPU申請中斷申請中斷;若若CPU響應中斷,在進入中斷服務后,響應中斷,在進入中斷服務后,CPU自動將自動將TF0清清0。TF0也可用軟件清也

23、可用軟件清0(查詢方式)(查詢方式)。7)TF1:定時:定時/計數器計數器T1的中斷標志,功能和的中斷標志,功能和TF0類似。類似。(1)外部中斷和定時器的中斷請求標志外部中斷和定時器的中斷請求標志 定時定時/計數器計數器T0和和T1的控制寄存器的控制寄存器TCON 10:45:22u外部中斷外部中斷2、外部中斷、外部中斷3及外部中斷及外部中斷4只能只能下降沿觸發下降沿觸發。u外部中斷外部中斷24的中斷請求標志位對用戶不可見的中斷請求標志位對用戶不可見。當相。當相應的中斷服務程序執行后或應的中斷服務程序執行后或屏蔽位屏蔽位EXn=0(n=2,3,4), 這這些中斷請求標志位會自動地被清些中斷請

24、求標志位會自動地被清0。u外部中斷外部中斷2、3及及4也可用于將單片機從掉電模式喚醒。也可用于將單片機從掉電模式喚醒。u定時器定時器2、定時器、定時器3和定時器和定時器4的中斷請求標志位對用的中斷請求標志位對用戶不可見戶不可見。當相應的中斷服務程序執行后或。當相應的中斷服務程序執行后或屏蔽位屏蔽位ET2=0/ET3=0/ET4=0, 中斷請求標志位會自動地被清中斷請求標志位會自動地被清0。21(1)外部中斷和定時器的外部中斷和定時器的中斷請求標志中斷請求標志 定時定時/計數器計數器T0和和T1的控制寄存器的控制寄存器TCON 10:45:22串口串口1、串口、串口2、串口、串口3和串口和串口4

25、的中斷請求標志分的中斷請求標志分別鎖存在特殊功能寄存器別鎖存在特殊功能寄存器SCON、S2CON、S3CON和和S4CON中。這些中斷請求標志都不能自動清中。這些中斷請求標志都不能自動清0,需,需要用戶在中斷服務程序中使用軟件清要用戶在中斷服務程序中使用軟件清0。6.2.1 中斷源及其優先級管理中斷源及其優先級管理 1、中斷源、中斷源 (2)串口的中斷請求標志串口的中斷請求標志2210:45:22用于對串行口用于對串行口1的工作方式進行控制,其最低兩位鎖存的工作方式進行控制,其最低兩位鎖存串行口串行口1發送中斷標志發送中斷標志TI和和接收中斷標志接收中斷標志RI。SCON(地址為(地址為98H

26、,復位值為,復位值為00H)各位的定義如下:)各位的定義如下:23TITI或或RIRI只要有一個為只要有一個為1 1,表示串行口申請中斷,表示串行口申請中斷位號位號D7D6D5D4D3D2D1D0位名稱位名稱 SM0/FE SM1 SM2 REN TB8 RB8TIRI(2)串口的中斷請求標志串口的中斷請求標志 串行口串行口1控制寄存器控制寄存器SCON (可位尋址可位尋址) 1 1)RIRI:串行口:串行口1 1接收中斷標志。接收中斷標志。RI=1RI=1表示串行口表示串行口1 1接收器已經接收到數據接收器已經接收到數據, ,所以向所以向CPUCPU申請中斷申請中斷, ,以便將接收到的數據存

27、到預先安排好的數以便將接收到的數據存到預先安排好的數據區。據區。RIRI必須由用戶在中斷處理程序中用指令清必須由用戶在中斷處理程序中用指令清0 0。10:45:22(2)串行口)串行口1控制寄存器控制寄存器SCON 2 2)TITI:串行口:串行口1 1發送中斷標志。發送中斷標志。 TI=1 TI=1表示串行口發送器已經發送完上一個數據,表示串行口發送器已經發送完上一個數據,所以向所以向CPUCPU申請中斷,以便發送下一個數據。申請中斷,以便發送下一個數據。TITI必須必須由用戶在中斷處理程序中用指令清由用戶在中斷處理程序中用指令清0 0。24位號位號D7D6D5D4D3D2D1D0位名稱位名

28、稱 SM0/FE SM1 SM2 REN TB8 RB8TIRI3 3) SCON其他位的作用在第其他位的作用在第8 8章數據通信章數據通信( (8.2.1 單片單片機的串行接口機的串行接口) )中介紹。中介紹。(2)串口的中斷請求標志串口的中斷請求標志 串行口串行口1控制寄存器控制寄存器SCON (可位尋址可位尋址) 10:45:22 (2)串口的中斷請求標志串口的中斷請求標志 串口串口2控制寄存器控制寄存器S2CON寄存器寄存器S2CON(地址為地址為9AH,復位值為復位值為00H)用于確)用于確定串口定串口2的操作方式和控制串口的操作方式和控制串口2的某些功能,并設有的某些功能,并設有接

29、收和發送中斷標志接收和發送中斷標志(S2RI及及S2TI)位。)位。S2CON各位的定義如下:各位的定義如下:25位號位號D7D 6D 5D 4D 3D 2D 1D 0位名稱位名稱S2SM0 S2SM1 S2SM2S2RENS2TB8 S2RB8 S2TI S2RIS2TI和和S2RI是串口是串口2的的發送中斷標志發送中斷標志和和接收中斷標志接收中斷標志,與與寄存器寄存器SCON對應位的含義和功能類似對應位的含義和功能類似,在此,不,在此,不做詳細描述。做詳細描述。 10:45:22串口串口3控制寄存器控制寄存器S3CON中的標志位中的標志位:S3TI和和S3RI是串口是串口3的發送中斷標志和

30、接收中斷的發送中斷標志和接收中斷標志,與寄存器標志,與寄存器SCON對應位的含義和功能類似。對應位的含義和功能類似。串口串口4控制寄存器控制寄存器S4CON中的標志位:中的標志位:S4TI和和S4RI是串口是串口4的發送中斷標志和接收中斷標的發送中斷標志和接收中斷標志,與寄存器志,與寄存器SCON對應位的含義和功能類似。對應位的含義和功能類似。26(2)串口的中斷請求標志串口的中斷請求標志10:45:22(3)電源控制寄存器)電源控制寄存器PCON電源控制寄存器電源控制寄存器PCON(地址為(地址為87H,復位值為,復位值為30H)寄存器的各位定義如下:寄存器的各位定義如下:27位號位號D7D

31、6D5D4D3D2D1 D0位名稱位名稱 SMOD SMOD0 LVDF POF GF1 GF0 PD IDL與與中斷有關的位是中斷有關的位是LVDFLVDF。LVDFLVDF是低電壓檢測標志位,同時也是低電壓檢測中斷是低電壓檢測標志位,同時也是低電壓檢測中斷請求標志位。請求標志位。PCON中中SMOD, SMOD0的作用在的作用在第第8 8章數據通信章數據通信( (8.2.1 單片機的串行接口單片機的串行接口) )中介紹中介紹; ; 其他位作用在其他位作用在第第11章復位章復位-時鐘和省電方式控制時鐘和省電方式控制( (第第1 1版有版有, ,第第2 2版無此章版無此章) )中介紹。中介紹。

32、10:45:22(4) PCA (Programmable Counter Array)控制寄存器控制寄存器CCON CCON(地址為地址為D8H(可位尋址可位尋址), 復位值為復位值為00 xx xx00B)28位號位號D7D6D5D4D3D2D1D0位名稱位名稱CFCR-CCF1 CCF01 1)CFCF:PCAPCA計數器計數器溢出標志位。溢出標志位。當當PCAPCA計數器計數器溢出時溢出時, ,CFCF由硬件置位由硬件置位。如。如PCAPCA工作模式工作模式寄存器寄存器CMODCMOD的的ECFECF位位( (使能位使能位) )置位置位, ,CFCF標標志志可產可產生中斷。生中斷。CF

33、CF位位可可通過硬件或通過硬件或軟件置位軟件置位, ,但但只能通過軟件清只能通過軟件清0 0。2 2)CCF1/CCF0CCF1/CCF0:PCAPCA各個各個模塊的中斷標志位模塊的中斷標志位。3 3)CR: PCACR: PCA計數器的運行控制位。計數器的運行控制位。CR=1,CR=1,啟動啟動PCAPCA。具體。具體見見 第第10章中相應章中相應 PCA模塊的特殊功能寄存器模塊的特殊功能寄存器對應對應2個模塊個模塊10:45:22(5)SPI狀態寄存器狀態寄存器SPSTATSPSTAT(地址為(地址為CDH,復位值為,復位值為00 xx xxxxB)各位的定義如下:各位的定義如下:29位號

34、位號D7D6D5D4D3D2D1D0位名稱位名稱 SPIF WCOL-SPIF是是SPI傳輸完成標志傳輸完成標志。 當一次傳輸完成時,當一次傳輸完成時,SPIF被置位。此時,如果被置位。此時,如果SPI中斷中斷被打被打開開(IE2.1: ESPI=1,EA=1),將產生中斷。,將產生中斷。SPIF標志通過軟件向其寫入標志通過軟件向其寫入1而清而清0。WCOL: SPI寫沖突標志。寫沖突標志。WCOL位的作用以及位的作用以及SPI模模塊在塊在第第8 8章數據通信章數據通信中介紹。中介紹。10:45:22(6)ADC控制寄存器控制寄存器ADC_CONTR位號位號D7D6D5D4D3D2D1D0位名

35、位名稱稱ADC_POWERSPEED1 SPEED0ADC_FLAG ADC_START CHS2CHS1CHS030ADC_CONTR(地址為(地址為C5H,復位值為,復位值為0XX00000B)各位的定義如下:各位的定義如下:位位ADC_FLAG是是A/D轉換結束標志轉換結束標志。A/D轉換轉換完成后完成后, ADC_FLAG=1。此時。此時, 若若允許允許A/D轉轉換換中斷中斷(IE.EADC=1,EA=1),則由該位申請產生則由該位申請產生中斷。中斷。也也可由軟件查詢該可由軟件查詢該標志位標志位, 從而判斷從而判斷A/D轉換是否結束轉換是否結束, ADC_FLAG一定要軟件清一定要軟件

36、清“0”。其他位作用見其他位作用見:第第9章章(9.2.2 節集成節集成A/D模塊的結構模塊的結構) 10:45:22(7)PWM中斷的標志中斷的標志PWM中斷標志寄存器中斷標志寄存器PWMIFPWM中斷的標志保存在中斷的標志保存在PWM中斷標志寄存器中斷標志寄存器PWMIF中,包括中,包括PWM計數器中斷標志位計數器中斷標志位CBIF和和PWM2PWM7通道的通道的PWM中斷標志位中斷標志位C2IFC7IF。CBIF為為PWM計數器回計數器回0中斷標志位中斷標志位,當,當PWM計數計數器回器回0時由硬件自動置時由硬件自動置1,申請中斷;,申請中斷;CnIF(n = 27)為第)為第n通道的通

37、道的PWM中斷標志位中斷標志位,當當PWM發生翻轉時由硬件自動置發生翻轉時由硬件自動置1,申請中斷。響應,申請中斷。響應中斷后,這些中斷標志需要由軟件清中斷后,這些中斷標志需要由軟件清0。31位號位號D7D6D5D4D3D2D1D0位名稱位名稱-CBIF C7IF C6IF C5IFC4IFC3IFC2IF10:45:22(7) PWM中斷的標志中斷的標志PWM外部異??刂萍拇嫫魍獠慨惓?刂萍拇嫫鱌WMFDCPWM異常檢測中斷標志異常檢測中斷標志FDIF保存在保存在PWM外部外部異??刂萍拇嫫鳟惓?刂萍拇嫫鱌WMFDCR中:中:當發生當發生PWM異常時,異常時,FDIF被置被置1,向,向CPU

38、申請申請中斷。中斷。響應中斷后,響應中斷后,FDIF需要由軟件清需要由軟件清0。32位號位號D7 D6D5D4D3D2D1D0位名稱位名稱-ENFD FLTFLIO EFDI FDCMP FDIO FDIF10:45:22(8)比較器中斷請求標志)比較器中斷請求標志比較控制寄存器比較控制寄存器CMPCR1比較器中斷請求標志保存在比較控制寄存器比較器中斷請求標志保存在比較控制寄存器CMPCR1中。中。比較器中斷標志比較器中斷標志CMPIF=(CMPIF_p|CMPIF_n), 其中其中CMPIF_p是比較器上升沿中斷標志是比較器上升沿中斷標志, CMPIF_n是比較器下降沿中斷標志是比較器下降沿

39、中斷標志; 當當CPU讀取讀取CMPIF時會讀到時會讀到(CMPIF_p |CMPIF_n); 當當CPU對對CMPIF寫寫“0”后后, CMPIF_p及及CMPIF_n會被自動設置為會被自動設置為“0”。因此,當比較器的比較結果由因此,當比較器的比較結果由LOW變成變成HIGH時時, 那么那么CMPIF_p會被設置成會被設置成1, 比較器中斷標志位比較器中斷標志位CMPIF也會被設置成也會被設置成1, 如果比較器上升沿中斷被允許如果比較器上升沿中斷被允許, 即即PIE(CMPCR1.5)已被設置已被設置成成1, 則向則向CPU請求中斷請求中斷, 單片機轉去執行比較器上升中斷程序;單片機轉去執

40、行比較器上升中斷程序;33位號位號D7D6D5D4D3 D2D1D0位名稱位名稱CMPEN CMPIF PIE NIE PIS NIS CMPOE CMPRES10:45:22(8)比較器中斷請求標志)比較器中斷請求標志比較控制寄存器比較控制寄存器CMPCR1同理同理, 當比較器的比較結果由當比較器的比較結果由HIGH變成變成LOW時時, 那那么么CMPIF_n會被設置成會被設置成1, 比較器中斷標志位比較器中斷標志位CMPIF也會被設置成也會被設置成1, 如果比較器下降沿中斷被允許如果比較器下降沿中斷被允許, 即即NIE(CMPCR1.4)已被設置成已被設置成1, 則向則向CPU請求中斷請求

41、中斷, 單單片機轉去執行比較器下降中斷程序。片機轉去執行比較器下降中斷程序。中斷響應完成后,比較器中斷標志位中斷響應完成后,比較器中斷標志位CMPIF不會不會自動被清零自動被清零, 用戶需通過軟件向其寫入用戶需通過軟件向其寫入“0”清零。清零。34位號位號D7D6D5D4D3 D2D1D0位名稱位名稱CMPEN CMPIF PIE NIE PIS NIS CMPOE CMPRES10:45:222、中斷的允許、禁止及優先級、中斷的允許、禁止及優先級(1)中斷的允許和禁止)中斷的允許和禁止 IAP15W4K58S4沒有專門的開中斷和關中斷指令沒有專門的開中斷和關中斷指令, 中斷中斷的允許和禁止是

42、通過設置的允許和禁止是通過設置IE, IE2, 外部中斷使能和時鐘外部中斷使能和時鐘輸出寄存器輸出寄存器INT_CLKO等等寄存器寄存器的相應位的相應位實現的。實現的。35位號位號D7D6D5D4D3D2D1D0位名稱位名稱 EAELVDELVDEADCEADCESET1EX1 ET0 EX0例如例如:中斷允許寄存器中斷允許寄存器IE(地址為地址為A8H, 復位值為復位值為00H)單片機對中斷源的允許和禁止單片機對中斷源的允許和禁止由由兩級允許控制組成兩級允許控制組成,即即總控制總控制(EA位位)和和對每個中斷源的分別控制對每個中斷源的分別控制??偪刂啤?偪刂?EA位位)用于用于決定整個中斷系

43、統是允許還是禁止決定整個中斷系統是允許還是禁止,當整,當整個中斷系統禁止時,個中斷系統禁止時,CPU不響應任何中斷請求。不響應任何中斷請求。與中斷允許有關的特殊功能寄存器及其控制位見與中斷允許有關的特殊功能寄存器及其控制位見表表6-3 10:45:22Interrupt Enable 表表6-3 與中斷允許有關的特殊功能寄存器及其控制位與中斷允許有關的特殊功能寄存器及其控制位寄存器寄存器地址地址D7D6D5D4D3D2D1D0復位復位值值IEA8HEAELVDEADCESET1EX1ET0EX000000000BIE2AFH-ET4ET3ES4ES3ET2ESPIES2x0000000BINT

44、_CLKO 8FH-EX4EX3EX2-T2CLKOT1CLKOT0CLKOx000 x000BCMODD9HCIDL-CPS2CPS1CPS0ECF0 xxx0000BCCAPMn(n=01)DAHDBH-ECOMnCAPPnCAPNn MATn TOGn PWMnECCFnx0000000BPWMCRF5HENPWMECBI ENC7OENC6OENC5OENC4OENC3OENC2O00000000BPWMFDCRF7H-ENFDFLTFLIOEFDIFDCMPFDIO FDIFxx000000BCMPCR1E6HCMPENCMPIFPIENIEPISNISCMPOECMPRES0000

45、0000B362、中斷的允許、禁止及優先級、中斷的允許、禁止及優先級 (1)中斷的允許和禁止)中斷的允許和禁止10:45:2237 中斷允許寄存器中斷允許寄存器IE (地址地址A8H,復位值復位值00000000B)位號位號D7D6D5D4D3D2D1D0位名稱位名稱 EAELVDELVDEADCEADCESET1EX1 ET0 EX02)ELVD:低電壓檢測中斷低電壓檢測中斷允許控制位。允許控制位。 1:允許低電壓檢測中斷;:允許低電壓檢測中斷; 0:禁止低電壓檢測中斷。:禁止低電壓檢測中斷。1 1)EAEA:中斷允許總控制位:中斷允許總控制位。 0: 0:禁止中斷系統禁止中斷系統, ,所有

46、所有中斷源中斷源的中斷請求均被禁止的中斷請求均被禁止, ,稱為稱為關中斷關中斷。 1:1:允許中斷系統允許中斷系統, ,所有中斷源的中斷請求均可以被允所有中斷源的中斷請求均可以被允許許, ,稱為稱為開中斷開中斷;某一個中斷源的請求是否允許,;某一個中斷源的請求是否允許,還要由該中斷源所對應的還要由該中斷源所對應的中斷允許控制位決定中斷允許控制位決定。10:45:223)EADC:ADC中斷中斷允許控制位。允許控制位。 1:允許:允許ADC中斷;中斷; 0:禁止:禁止ADC中斷。中斷。38 中斷允許寄存器中斷允許寄存器IE (地址地址A8H,復位值復位值00000000B)位號位號D7D6D5D

47、4D3D2D1D0位名稱位名稱 EAEAELVDELVDEADCEADCESET1EX1 ET0 EX04)ES:串行口串行口1中斷中斷允許控制位。允許控制位。 1:允許串行口:允許串行口1中斷;中斷; 0:禁止串行口:禁止串行口1中斷。中斷。5)ET1:定時器定時器1中斷中斷允許控制位。允許控制位。 1:允許定時器:允許定時器1中斷;中斷; 0:禁止定時器:禁止定時器1中斷。中斷。10:45:226)EXl:外部外部中斷中斷INT1中斷允許控制位。中斷允許控制位。 1:允許外部中斷:允許外部中斷1中斷;中斷; 0:禁止外部中斷:禁止外部中斷1中斷。中斷。7)ET0:定時器定時器0中斷中斷允許

48、控制位。允許控制位。 1:允許定時器:允許定時器0中斷;中斷; 0:禁止定時器:禁止定時器0中斷。中斷。8)EX0:外部外部中斷中斷INT0中斷允許控制位。中斷允許控制位。 1:允許外部中斷:允許外部中斷0中斷;中斷; 0:禁止外部中斷:禁止外部中斷0中斷。中斷。39 中斷允許寄存器中斷允許寄存器IE (地址地址A8H,復位值復位值00000000B)位號位號D7D6D5D4D3D2D1D0位名稱位名稱 EAELVDELVDEADCEADCESET1EX1 ET0 EX010:45:2240 ET4 ET4:定時器定時器4 4的中斷允許位的中斷允許位。 1 1:允許定時器:允許定時器4 4產生

49、中斷;產生中斷; 0 0:禁止定時器:禁止定時器4 4產生中斷。產生中斷。 ET3ET3:定時器定時器3 3的中斷允許位的中斷允許位。 1 1:允許定時器:允許定時器3 3產生中斷;產生中斷; 0 0:禁止定時器:禁止定時器3 3產生中斷。產生中斷。 ES4ES4:串行口串行口4 4中斷中斷允許控制位。允許控制位。 1 1:允許串行口:允許串行口4 4中斷;中斷; 0 0:禁止串行口:禁止串行口4 4中斷。中斷。 ES3ES3:串行口串行口3 3中斷中斷允許控制位。允許控制位。 1 1:允許串行口:允許串行口3 3中斷;中斷; 0 0:禁止串行口:禁止串行口3 3中斷。中斷。位號位號D7D6D

50、5D4D3D2D1D0位名稱位名稱ET4 ET3 ES4 ES3 ET2 ESPI ES2 中斷允許寄存器中斷允許寄存器IE2(地址地址AFH,復位值復位值XXXXXX00B)10:45:22(地址為(地址為AFH,復位值為,復位值為XXXXXX00B)41 ET2 ET2:定時器定時器2 2的中斷允許位的中斷允許位。 1 1:允許定時器:允許定時器2 2產生中斷;產生中斷; 0 0:禁止定時器:禁止定時器2 2產生中斷。產生中斷。 ESPIESPI:SPISPI中斷中斷允許控制位。允許控制位。 1 1:允許:允許SPISPI中斷;中斷; 0 0:禁止:禁止SPISPI中斷。中斷。 ES2ES

51、2:串行口串行口2 2中斷中斷允許控制位。允許控制位。 1 1:允許串行口:允許串行口2 2中斷;中斷; 0 0:禁止串行口:禁止串行口2 2中斷。中斷。位號位號D7D6D5D4D3D2D1D0位名稱位名稱ET4 ET3 ES4 ES3 ET2 ESPI ES2 中斷允許寄存器中斷允許寄存器IE210:45:22 外部中斷使能和時鐘輸出寄存器外部中斷使能和時鐘輸出寄存器INT_CLKO外部中斷使能和時鐘輸出寄存器外部中斷使能和時鐘輸出寄存器INT_CLKO (地址地址8FH, 復位值復位值X0000000B, 不能進行位尋址不能進行位尋址), 各位定義:各位定義:42位號位號D7D6D5D4D

52、3D2D1D0位名稱位名稱-EX4EX3EX2-T2CLKO T1CLKO T0CLKOEX4:外部中斷外部中斷4中斷允許位中斷允許位。 1:允許外部中斷:允許外部中斷4中斷;中斷; 0:禁止外部中斷:禁止外部中斷4中斷。外部中斷中斷。外部中斷4下降沿觸發。下降沿觸發。EX3:外部中斷外部中斷3中斷允許位中斷允許位。 1:允許外部中斷:允許外部中斷3中斷;中斷; 0:禁止外部中斷:禁止外部中斷3中斷。外部中斷中斷。外部中斷3下降沿觸發。下降沿觸發。EX2:外部中斷外部中斷2中斷允許位中斷允許位。 1:允許外部中斷允許外部中斷2中斷中斷; 0: 禁止外部中斷禁止外部中斷2中斷。下降沿觸發。中斷。

53、下降沿觸發。第第7章章, 第第11章章(第第1版版)10:45:22 PCA比較比較/捕獲寄存器捕獲寄存器CCAPMn PCA比較比較/捕獲寄存器捕獲寄存器CCAPMn(n=0,1,下同。地址分下同。地址分別對應別對應DAH, DBH和和DCH,復位值均為,復位值均為X0000000B),),各位的定義如下:各位的定義如下:43位號位號 D7D6D5D4D3D2D1D0位名稱位名稱- ECOMn CAPPn CAPNn MATn TOGn PWMn ECCFnECCFn:使能:使能CCFn中斷。使能寄存器中斷。使能寄存器CCON的比較的比較/捕獲標志捕獲標志CCFn用來產生用來產生中斷。中斷。

54、其他位的作用見其他位的作用見: 第第10章章 PCA模塊的特殊功能寄存器模塊的特殊功能寄存器對應對應2個模塊個模塊10:45:23 PCA工作模式寄存器(工作模式寄存器(CMOD) PCA工作模式寄存器工作模式寄存器(CMOD)(地址為(地址為D9H,復位值,復位值為為0XXX0000B)各位的定義如下:)各位的定義如下: 44ECF:PCA計數器溢出中斷使能位。計數器溢出中斷使能位。ECF=1時,允時,允許寄存器許寄存器CCON中中CF位的中斷位的中斷。ECF=0時,禁止寄時,禁止寄存器存器CCON中中CF位的中斷。位的中斷。其他位的作用見其他位的作用見:第第10章章 PCA模塊的特殊功能寄

55、存器模塊的特殊功能寄存器位號位號D7D6 D5D4D3D2D1D0位名稱位名稱 CIDL-CPS2 CPS1 CPS0ECF10:45:23 PWM控制寄存器控制寄存器PWMCRECBI為為PWM計數器回計數器回0中斷允許控制位。中斷允許控制位。 PWM外部異??刂萍拇嫫魍獠慨惓?刂萍拇嫫鱌WMFDCREFDI為為PWM異常檢測中斷允許控制位。異常檢測中斷允許控制位。 比比較器控制寄存器較器控制寄存器1CMPCR1PIE為比較器上升沿中斷允許控制位。為比較器上升沿中斷允許控制位。NIE為比較器下降沿中斷允許控制位。為比較器下降沿中斷允許控制位。45(1)中斷的允許和禁止)中斷的允許和禁止 10

56、:45:23(1)中斷的允許和禁止)中斷的允許和禁止 IAP15W4K58S4單片機復位后,各單片機復位后,各中斷允許寄存器控中斷允許寄存器控制位制位均被均被清清“0”,即,即禁止所有中斷禁止所有中斷。如果需要允許某。如果需要允許某些中斷,可在程序中將相應中斷控制位置為些中斷,可在程序中將相應中斷控制位置為1??赏ㄟ^對可通過對IE、IE2和和INT_CLKO等寄存器等寄存器的相應位進的相應位進行置行置1或清或清0的操作來允許或禁止各中斷源的中斷申請。的操作來允許或禁止各中斷源的中斷申請。禁止某個中斷源申請中斷禁止某個中斷源申請中斷, 也稱為也稱為屏蔽某個中斷源屏蔽某個中斷源。欲。欲使某中斷源允

57、許中斷使某中斷源允許中斷, 必須同時必須同時EA=1, 即必須使整個中即必須使整個中斷系統允許中斷。所以斷系統允許中斷。所以EA是中斷允許的是中斷允許的“總開關總開關”。46例如例如, 若要允許外部中斷若要允許外部中斷0中斷中斷, 需將需將EX0和和EA都置都置1。 若要允許若要允許A/D轉換中斷轉換中斷, 則需要將則需要將EADC和和EA都置都置1。10:45:23(2)中斷的優先級)中斷的優先級除了除了外部中斷外部中斷24、定時器定時器T2T4、串口串口34及比較器及比較器中斷中斷,不能設置為高優先級不能設置為高優先級;其他中斷源通過特殊功能寄存器其他中斷源通過特殊功能寄存器(IP和和IP

58、2)中的相應中的相應位位(表表6-4),可設為,可設為高、低二級優先級高、低二級優先級,實現,實現二級中斷二級中斷嵌套嵌套,與傳統,與傳統8051單片機兩級中斷優先級完全兼容。單片機兩級中斷優先級完全兼容。47IAP15W4K58S4單片機對中斷優先級的處理原則單片機對中斷優先級的處理原則 低低優先級中斷可優先級中斷可被高被高優先級中斷優先級中斷所中斷所中斷, 反之不能反之不能。任何一種中斷任何一種中斷(不管是高優先級還是低優先級不管是高優先級還是低優先級),一,一旦得到響應旦得到響應, 不會再被它的同級中斷所中斷不會再被它的同級中斷所中斷。10:45:23表表6-4 與中斷優先級有關的特殊功

59、能寄存器及其控制位與中斷優先級有關的特殊功能寄存器及其控制位 寄存寄存器器地址地址D7D6D5D4D3D2D1D0復位復位值值IP B8HPPCAPLVD PADC PSPT1PX1PT0 PX00000 0000BIP2 B5HPPWMFD PPWM PSPI PS2XXXX 0000B48 1)中斷優先級寄存器)中斷優先級寄存器IP: 各位的定義如下:各位的定義如下:每一位對應其相應的每一位對應其相應的中斷源中斷源的的優先級控制位優先級控制位。 1:高優先級;:高優先級; 0:低優先級。:低優先級。IP, IP2一起確定一起確定IAP15W4K58S4單片機的單片機的二個中斷優先級二個中斷

60、優先級 。STC15F2K60S2無無10:45:23表表6-4 與中斷優先級有關的特殊功能寄存器及其控制位與中斷優先級有關的特殊功能寄存器及其控制位 位號位號D7D6D5D4D3D2D1D0位名稱位名稱PPWMFDPPWMPSPIPS22)第二中斷優)第二中斷優先級寄先級寄存存器器IP2IP2(地址為地址為B5H, 復位值為復位值為XXXX0000B):(a a)PPWMFDPPWMFD:PWMPWM異常檢測中斷優先級控制位。異常檢測中斷優先級控制位。(b b)PPWMPPWM: PWM PWM中斷優先級控制位。中斷優先級控制位。(c c)PSPIPSPI:SPISPI中斷優先級控制位。中斷

溫馨提示

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

評論

0/150

提交評論