單片機原理及應用ppt課件_第1頁
單片機原理及應用ppt課件_第2頁
單片機原理及應用ppt課件_第3頁
單片機原理及應用ppt課件_第4頁
單片機原理及應用ppt課件_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第六章第六章 MCS-51中斷與定時系統(tǒng)中斷與定時系統(tǒng)6.1 MCS-51單片機中斷系統(tǒng)單片機中斷系統(tǒng)6-1-1 單片機中斷技術概述單片機中斷技術概述中斷的概念中斷的概念計算機理論中中斷技術的含義:資源共享技術計算機理論中中斷技術的含義:資源共享技術中斷的功能:中斷的功能:實現實現CPU與外部設備的速度配合;與外部設備的速度配合;實現實時控制;實現實時控制;實現故障及時發(fā)現;實現故障及時發(fā)現;實現人機聯(lián)系。實現人機聯(lián)系。中斷處理:中斷處理:現場保護,恢復現場;現場保護,恢復現場;開中斷,關中斷;開中斷,關中斷;執(zhí)行中斷服務程序;執(zhí)行中斷服務程序;中斷返回。中斷返回。6-1-2 中斷源中斷源外部

2、中斷0;中斷請求信號來自引腳 (P3.2)外部中斷1;中斷請求信號來自引腳 (P3.3)定時中斷0;定時中斷1;串行口中斷。向CPU發(fā)出中斷請求的地方,稱之為中斷源。MCS-51單片機中斷源:3類共5個。外部中斷請求信號來自引腳 (P3.2和 ( P3.3)0INT1INT請求方式有兩種:電平方式;脈沖方式。請求方式有兩種:電平方式;脈沖方式。通過通過TCON的的IT0、IT1選擇,選擇,電平方式電平方式IT0IT1)=0):低電平有效):低電平有效脈沖方式脈沖方式IT0IT1)=1):脈沖負跳變有效):脈沖負跳變有效定時中斷內部中斷):滿足定時、計數的需要。定時中斷內部中斷):滿足定時、計數

3、的需要。定時狀態(tài),計數狀態(tài)定時狀態(tài),計數狀態(tài)兩個兩個16位寄存器。對應位寄存器。對應T0、T1(專用寄存器(專用寄存器8AH、8BH,8CH、8DH)寄存器溢出作為有效中斷請求信號寄存器溢出作為有效中斷請求信號串行中斷內部中斷):用于串行數據傳送串行中斷內部中斷):用于串行數據傳送串行口緩沖器串行口緩沖器SBUF8位專用寄存器位專用寄存器99H),),不能進行位尋址不能進行位尋址MOV A, SBUF;接納MOV SBUF,A;發(fā)送6-1-3 中斷控制中斷控制定時器控制寄存器定時器控制寄存器TCON)字節(jié)地址字節(jié)地址88H位地址位地址位符號位符號F8E8D8C8B8A889881TF1TR0T

4、F0TR1IE1IT0IE0IT功能:定時器/計數器控制功能;中斷控制功能。IE0IE1)外中斷請求標志位外中斷請求標志位硬件置位硬件置位當當CPU采樣到采樣到 出現有效中斷請求時。出現有效中斷請求時。中斷響應完成,轉向中斷服務程序時,硬件自動清零。中斷響應完成,轉向中斷服務程序時,硬件自動清零。)INT(INT10IT0IT1)外中斷請求信號方式控制位外中斷請求信號方式控制位IT0IT1)=1 脈沖方式負跳變有效);脈沖方式負跳變有效);IT0IT1)=0 電平方式低電平有效)。電平方式低電平有效)。TF0IF1)計數溢出標志計數溢出標志硬件置位硬件置位當計數器產生計數溢出時。當計數器產生計

5、數溢出時。轉向中斷服務程序時,硬件清零。轉向中斷服務程序時,硬件清零。位地址位地址位符號位符號F9E9D9C9B9A999981SM0SM2SMREN8TB8RBTIRI串行口控制寄存器串行口控制寄存器SCON)字節(jié)地址98HTI串行口發(fā)送中斷請求標志位串行口發(fā)送中斷請求標志位當發(fā)送完一幀串行數據后,硬件置位;在轉向中斷服務程序當發(fā)送完一幀串行數據后,硬件置位;在轉向中斷服務程序后,用軟件清零。后,用軟件清零。RI串行口接收中斷請求標志位串行口接收中斷請求標志位當接收完一幀串行數據后,硬件置位;在轉向中斷服務程序當接收完一幀串行數據后,硬件置位;在轉向中斷服務程序后,用軟件清零。后,用軟件清零

6、。位地址位地址位符號位符號AFAEADACABAA9A8A/EA/ES1ET1EX0ET0EX中斷允許控制寄存器中斷允許控制寄存器IE)字節(jié)地址字節(jié)地址A8HEA中斷允許總控制位中斷允許總控制位EA=0 中斷總禁止;中斷總禁止;EA=1 中斷總允許中斷總允許EX0EX1)外部中斷允許控制位外部中斷允許控制位EX0EX1)=0 禁止外中斷;禁止外中斷;EX0EX1)=1 允許外中斷允許外中斷ET0ET1)定時定時/計數中斷允許控制位計數中斷允許控制位ET0ET1)=0 禁止定時計數中斷;禁止定時計數中斷;ET0ET1)=1 允許定時計數中斷允許定時計數中斷ES串行中斷允許控制位串行中斷允許控制位

7、ES=0 禁止串行中斷;禁止串行中斷;ES=1 允許串行中斷允許串行中斷位地址位地址位符號位符號BFBEBDBCBBBA9B8B/PS1PT1PX0PT0PX中斷優(yōu)先級控制寄存器中斷優(yōu)先級控制寄存器IE)字節(jié)地址字節(jié)地址B8HPS串行中斷優(yōu)先級設定位;PT1定時中斷1優(yōu)先級設定位PT0定時中斷0優(yōu)先級設定位PX1外部中斷1優(yōu)先級設定位PX0外部中斷0優(yōu)先級設定位0:優(yōu)先級低1:優(yōu)先級高中斷優(yōu)先級控制原則:中斷優(yōu)先級控制原則:1低優(yōu)先級中斷請求不能打斷高優(yōu)先級中斷請求;高優(yōu)先級中斷請求可以打斷低優(yōu)先級中斷請求。2如果一個中斷請求已被響應,則同級的其他中斷響應將被禁止。3如果同級的多個中斷請求同時

8、出現,則按CPU查詢次序確定哪個中斷請求被響應。查詢次序: 外部中斷0定時中斷0外部中斷1定時中斷1串行中斷。6-1-4 中斷響應過程中斷響應過程)INT(INT10)IE(IE10外部中斷請求采樣:(外部中斷請求采樣:(S5P2對中斷請求引腳采樣)對中斷請求引腳采樣)采樣采樣 引腳引腳電平方式:采樣到低電平,中斷請求有效,電平方式:采樣到低電平,中斷請求有效,IE0IE1置置1脈沖方式:在兩個相鄰機器周期采樣到先高電平后低電平,脈沖方式:在兩個相鄰機器周期采樣到先高電平后低電平,則中斷請求有效,則中斷請求有效,IE0IE1置置1。)3 . 3P(INT),2 . 3P(INT10內部中斷請求

9、:(定時內部中斷請求:(定時/計數器中斷,串行中斷)計數器中斷,串行中斷)中斷請求發(fā)生在單片機芯片內部,不存在中斷請求采樣問題中斷請求發(fā)生在單片機芯片內部,不存在中斷請求采樣問題直接置位相應的中斷請求標志位。直接置位相應的中斷請求標志位。定時/計數器0定時/計數器1)TF(TF10串行發(fā)送串行接收TIRI 中斷查詢中斷查詢當中斷源有了有效的中斷請求信號,并將其鎖定在相應的當中斷源有了有效的中斷請求信號,并將其鎖定在相應的中斷請求標志位中,中斷請求標志位中,CPU通過對這些標志位的查詢,感知通過對這些標志位的查詢,感知中斷請求。中斷請求。MCS-51單片機在每個機器周期的單片機在每個機器周期的S

10、6狀態(tài)按中斷優(yōu)先級次序狀態(tài)按中斷優(yōu)先級次序對中斷請求標志位進行查詢。對中斷請求標志位進行查詢。查詢有標志位為查詢有標志位為1,在緊接的下一個機器周期開始中斷響應。,在緊接的下一個機器周期開始中斷響應。中斷查詢與響應中斷查詢與響應由硬件自動生成一條LCALL長調用指令。LCALL addr16指向相應中斷入口地址)對于外部中斷0響應LCALL 0003H存在下列情況之一,中斷響應無法進行存在下列情況之一,中斷響應無法進行1CPU正在處于一個同級或高級的中斷服務中;正在處于一個同級或高級的中斷服務中;2查詢中斷請求的機器周期不是當前執(zhí)行指令的最后一個查詢中斷請求的機器周期不是當前執(zhí)行指令的最后一個

11、機器周期;機器周期;3當前指令是返回指令當前指令是返回指令RET,RET1或訪問或訪問IE,IP指令。指令。中斷響應時間:中斷響應時間:38個機器周期個機器周期中斷響應中斷響應6-1-5 中斷請求的撤消中斷請求的撤消1定時器/計數器中斷硬件撤除;中斷響應后自動清TF0TF1標志位。2外部中斷自動與強制撤除;中斷響應后硬件自動清IE0IE1標志位脈沖請求方式,自動撤除;電平請求方式強制撤除。QSDDCP0 . 1P0INT請求信號請求信號外部中斷外部中斷電平方式外部中斷請求撤除電路電平方式外部中斷請求信號的真正撤除,是通過軟件實現的電平方式外部中斷請求信號的真正撤除,是通過軟件實現的3串行中斷軟

12、件撤除標志位TI,RI不能通過硬件清零。只能在中斷響應后用軟件去除。6-2 MCS-51單片機的定時器單片機的定時器/計數器計數器6-2-1 定時方法概述定時方法概述軟件定時:執(zhí)行一個循環(huán)程序進行時間延遲。定時準確,軟件定時:執(zhí)行一個循環(huán)程序進行時間延遲。定時準確,不需要外加硬件電路,但增加不需要外加硬件電路,但增加CPU開銷。開銷。硬件定時:通過硬件電路實現定時,不占用硬件定時:通過硬件電路實現定時,不占用CPU時間,但時間,但使用不夠方便。使用不夠方便??删幊潭〞r器定時:通過對系統(tǒng)時鐘脈沖的計數實現定時??删幊潭〞r器定時:通過對系統(tǒng)時鐘脈沖的計數實現定時。計數值通過程序設定,定時準確,使用

13、方便靈活。計數值通過程序設定,定時準確,使用方便靈活。6-2-2 定時器定時器/計數器的定時和計數功能計數器的定時和計數功能MCS-51系列單片機有兩個可編程定時器/計數器:T0、T1,16位寄存器,加法計數結構,地址為:T0TH0,TL0):8CH,8AHT1TH1,TL0):8DH,8BH特殊功能寄存器特殊功能寄存器每個寄存器T0,T1都具有定時和計數功能MCS-51定時/計數器核心是一個16位計數器寄存器)。加1信號來源:外部計數脈沖、內部時鐘脈沖。信號來源方式:由特殊功能寄存器TMOD設置位C/T確定。 ,計數方式外部); ,定時方式內部)。0T/C 1T/C 定時方式:定時方式:MC

14、S-51MCS-51典型的指令周期執(zhí)行一條指令的時間典型的指令周期執(zhí)行一條指令的時間為一個機器周期。一個機器周期是時鐘振蕩的為一個機器周期。一個機器周期是時鐘振蕩的1212分頻,定時計數的速率機器周期是振蕩頻率分頻,定時計數的速率機器周期是振蕩頻率的的1/121/12。主頻為主頻為12MHz12MHz,機器周期為,機器周期為1s1s,也就是說,也就是說12M12M晶晶振時,每振時,每1s1s定時寄存器完成加定時寄存器完成加1 1操作。操作。一旦振蕩周期確定,機器周期亦確定。一旦振蕩周期確定,機器周期亦確定。計數方式計數方式計數脈沖來源于計數脈沖來源于T0T0P3.4P3.4)、)、T1T1P3

15、.5P3.5口。當檢口。當檢測到輸入引腳的電平由高跳變到低時,計數器加測到輸入引腳的電平由高跳變到低時,計數器加1 1。采樣采樣S5P2S5P2)、加)、加1 1S3P1S3P1操作。發(fā)生在兩個機操作。發(fā)生在兩個機器周期,因此需要器周期,因此需要2 2個機器周期才能識別一個從個機器周期才能識別一個從“1 1到到“0 0的跳變。最高計數頻率為振蕩頻率的跳變。最高計數頻率為振蕩頻率1/241/24,計數頻率周期必須大于計數頻率周期必須大于2s2s才能滿足作為計數脈沖。才能滿足作為計數脈沖。6-2-3 MCS-516-2-3 MCS-51定時定時/ /計數器控制與狀態(tài)寄存器計數器控制與狀態(tài)寄存器工作

16、方式控制寄存器工作方式控制寄存器TMOD狀態(tài)寄存器)狀態(tài)寄存器)GATETC/1M0M0M1MTC/GATE0計計數數器器定定時時 /1計數器計數器定時定時 /76543210字節(jié)地址字節(jié)地址89H不可以位尋址)不可以位尋址)M1M0為操作方式選擇位為操作方式選擇位111001003210方式方式方式方式方式方式方式方式無效無效位計數器,位計數器,分成兩個分成兩個位計數器位計數器自動再裝入自動再裝入位計數器位計數器位計數器位計數器1T80T816130M1M操作方式操作方式功能說明功能說明 :選擇定時:選擇定時/計數器模式計數器模式 ,計數模式;,計數模式; ,定時模式,定時模式GATE:選通

17、控制:選通控制GATE=0,選通,選通, 通過通過TRX啟動定時器。啟動定時器。GATE=1, 端口高電平,通過端口高電平,通過TRX啟動定時器。啟動定時器。XINT0T/C 1T/C T/C啟停與中斷控制寄存器啟停與中斷控制寄存器TCON控制寄存器)控制寄存器) 字節(jié)地址字節(jié)地址88H1TF1TR0TF0TR0IT0IE1IT1IE76543210TCON由定時/計數器和中斷系統(tǒng)合用。TR0:定時:定時/計數器計數器0啟??刂莆粏⑼?刂莆挥绍浖刂贫〞r由軟件控制定時/計數器計數器0的啟動的啟動/停頓。停頓。TR1:定時:定時/計數器計數器1啟??刂莆粏⑼?刂莆挥绍浖刂贫〞r由軟件控制定時/計

18、數器計數器1的啟動的啟動/停頓。停頓。TF0:定時:定時/計數器計數器0中斷請求標志位中斷請求標志位當定時當定時/計數器計數器0計數回計數回0時,由內部硬件置位時,由內部硬件置位TF0TF0=1),請求中斷。中斷服務程序一旦執(zhí)行,),請求中斷。中斷服務程序一旦執(zhí)行,硬件自動清硬件自動清0TF0=0)。)。TF1:定時:定時/計數器計數器1中斷請求標志位中斷請求標志位當定時當定時/計數器計數器1計數回計數回0時,由內部硬件置位時,由內部硬件置位TF1TF1=1),請求中斷。中斷服務程序一旦執(zhí)行,),請求中斷。中斷服務程序一旦執(zhí)行,硬件自動清硬件自動清0TF1=0)。)。IE0:外部中斷:外部中斷

19、0中斷請求標志中斷請求標志IT0=1, 負跳變觸發(fā)中斷,硬件置負跳變觸發(fā)中斷,硬件置IE0=1,當轉,當轉向中斷服務程序后,硬件自動清向中斷服務程序后,硬件自動清IE0=0。IT0=0, 低電平觸發(fā)中斷。硬件置低電平觸發(fā)中斷。硬件置IE0=1,當轉,當轉向中斷服務程序后,硬件自動清向中斷服務程序后,硬件自動清IE0=0。IE1:外部中斷:外部中斷1中斷請求標志中斷請求標志IT1=1, 負跳變觸發(fā)中斷,硬件置負跳變觸發(fā)中斷,硬件置IE1=1,當轉,當轉向中斷服務程序后,硬件自動清向中斷服務程序后,硬件自動清IE1=0。IT1=0, 低電平觸發(fā)中斷。硬件置低電平觸發(fā)中斷。硬件置IE1=1,當轉,當

20、轉向中斷服務程序后,硬件自動清向中斷服務程序后,硬件自動清IE1=0。0INT0INT1INT1INTIT0:外部中斷:外部中斷0觸發(fā)方式控制位觸發(fā)方式控制位軟件設置。軟件設置。IT0=1,外部中斷,外部中斷 ,發(fā)生,發(fā)生10跳跳變,產生中斷請求,向主機申請中斷。變,產生中斷請求,向主機申請中斷。IT0=0,那,那么么 端口低電平觸發(fā)中斷。端口低電平觸發(fā)中斷。IT1:外部中斷:外部中斷1觸發(fā)方式控制位觸發(fā)方式控制位軟件設置。軟件設置。IT1=1,外部中斷,外部中斷 ,發(fā)生,發(fā)生10跳跳變,產生中斷請求,向主機申請中斷。變,產生中斷請求,向主機申請中斷。IT1=0,那,那么么 端口低電平觸發(fā)中斷

21、。以上后四項用于中端口低電平觸發(fā)中斷。以上后四項用于中斷系統(tǒng)。斷系統(tǒng)。TCON可位尋址,其位地址為可位尋址,其位地址為88H8FH。1INT0INT0INT1INT位地址位地址位符號位符號AFAEADACABAA9A8A/EA/ES1ET1EX0ET0EX中斷允許控制寄存器中斷允許控制寄存器IE)字節(jié)地址字節(jié)地址A8HEA中斷允許總控制位中斷允許總控制位EA=0 中斷總禁止;中斷總禁止; EA=1 中斷總允許中斷總允許ET0ET1)定時定時/計數中斷允許控制位計數中斷允許控制位ET0ET1)=0 禁止定時計數中斷;禁止定時計數中斷;ET0ET1)=1 允許定時計數中斷允許定時計數中斷4-3 定

22、時定時/計數器的工作方式計數器的工作方式設置設置 (TMOD寄存器選擇定時模式還寄存器選擇定時模式還是計數模式是計數模式;對對M1M0的設置,用于選擇的設置,用于選擇T0、T1的四種操作的四種操作任務方式。任務方式。TL0、TL1,TH0、TH1兩對定時兩對定時/計數器計數器T/C(1定時定時/計數方式計數方式0 (13位計數器)位計數器)以定時以定時/計數器計數器0T0為例為例TH0全部全部8位,位,TL0低低5位構成位構成13位定時位定時/計數器。計數器。當當 時定時方式),開關接至振蕩時定時方式),開關接至振蕩12分頻輸出;分頻輸出;當當 時計數方式),開關接通時計數方式),開關接通T0

23、P3.4當計當計數脈沖發(fā)生負跳變計數器加數脈沖發(fā)生負跳變計數器加1。0T/C 1T/C )( bit80TH)( bit50TL0TF&1 1分頻分頻120=TC/1=TC/).(43P0T0TRGATE0INT).(23POSC控制控制中中斷斷請請求求計數示意圖方式計數示意圖方式位定時位定時/130定時定時/計數方式計數方式1 (16位計數器)位計數器)邏輯結構和方式邏輯結構和方式0完全一樣,只是完全一樣,只是TL是是8位計數器。位計數器。計數范圍計數范圍165536如晶振如晶振6MHz,最小定時時間為:,最小定時時間為:2s機器周期)機器周期)最大定時時間為:最大定時時間為:131

24、ms。定時定時/計數方式計數方式2 (自動再裝入(自動再裝入8位計數器)位計數器)THx,TLx相互獨立相互獨立x=0,1)。)。TLx作為作為8位計數器,位計數器,THx是初值寄存器。是初值寄存器。TLx溢出后,置溢出后,置TFx申請中斷。申請中斷。THx初值重新裝入初值重新裝入TLx。只需通過軟件設置一次,啟動后無限次。只需通過軟件設置一次,啟動后無限次定時定時/計數運行。(自動進行下一次)計數運行。(自動進行下一次)定時定時/計數方式計數方式3 (T0分成兩個分成兩個8位計數器,位計數器,T1無效)無效)將將T0分成兩個獨立的分成兩個獨立的8位計數器。位計數器。TL0組成完整的組成完整的

25、8位位定時定時/計數器;既能定時,又能計數。計數器;既能定時,又能計數。TH0只能組成只能組成8位定時器內部脈沖)。只能定時。位定時器內部脈沖)。只能定時。TL0占用占用T0全部控制信號及中斷請求標志位全部控制信號及中斷請求標志位TR0、TF0等)等)TH0只能借用只能借用TR1和和TF1。P3.5口口(T1外部計數脈沖輸入口外部計數脈沖輸入口)不能占用。不能占用。4-4 4-4 定時定時/ /計數器應用計數器應用基本步驟:基本步驟:工作方式控制字工作方式控制字TMODTMOD的設置;的設置;計數初值的計算并裝入計數初值的計算并裝入THxTHx、TLxTLx;中斷允許位中斷允許位EtxEtx、

26、EAEA的設置,使主機開放中斷;的設置,使主機開放中斷;啟啟/ /停位停位TRxTRx的設置。的設置。定時應用有查詢、中斷兩種方式。定時應用有查詢、中斷兩種方式。計數初值的確定計數初值的確定在方式在方式0下,當為計數方式時,計數值范圍下,當為計數方式時,計數值范圍18192213 )在方式在方式1下,當為計數方式時,計數值范圍下,當為計數方式時,計數值范圍165536216 )在方式在方式2下,當為計數方式時,計數值范圍下,當為計數方式時,計數值范圍125628 )當為定時方式時,定時時間:(2n 計數初值)*機器周期晶晶振振周周期期機機器器周周期期12=機機器器周周期期定定時時時時間間計計數數初初值值-n2=在方式0下最小定時時間為:2s最大定時時間為:16384s8192*2)在方式1下最小定時時間為:2s最大定時時間為:131ms65536*2)如晶振周期6MHz,機器周期為2s。例題:生成周期為例題:生成周期為500 s的等寬正方波。機器晶振的等寬正方波。機器晶振6MHz。使用。使用T1

溫馨提示

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

評論

0/150

提交評論