tft每日頭條

 > 科技

 > 單片機中斷系統使用方法

單片機中斷系統使用方法

科技 更新时间:2024-08-27 16:09:41

在單片機控制系統中,對于有可能發生,但又不能确定其是否發生、何時發生的事件處理,通常采用中斷方式處理。

一、中斷的概念

CPU在處理某一事件A時,發生了另一事件B請求CPU迅速去處理(中斷發生);

CPU暫時中斷當前的工作,轉去處理事件B(中斷響應和中斷服務);

待CPU将事件B處理完畢後,再回到原來事件A被中斷的地方繼續處理事件A(中斷返回),這一過程稱為中斷 。

單片機中斷系統使用方法(單片機初學者輕松入門之)1

中斷系統是單片機的重要組成部分,它使單片機具有實時中斷處理能力,進行實時控制,故障自動處理等。下面介紹中斷系統的幾個基本概念。

1、中斷源

1、中斷源和中斷請求标志

MCS-51單片機的5個中斷源及中斷請求标志見表,其中兩個是外部中斷源,另外3個屬于内部中斷源。

單片機中斷系統使用方法(單片機初學者輕松入門之)2

MCS-51的5個中斷源的中斷請求标志位位于定時器控制寄存器TCON和串行口控制寄存順SCON中,TCON及SCON中各位的名稱如表所示。

單片機中斷系統使用方法(單片機初學者輕松入門之)3

單片機中斷系統使用方法(單片機初學者輕松入門之)4

TF1(TF0):定時/計數器T1(T0)的溢出中斷請求标志位,當T1/T0計數産生溢出時,由硬件将TF1(TF0)置1,向CPU請求中斷。當CPU響應其中斷後,由硬件将TF1(TF0)自動清0。

IE1(IE0):外部中斷1(外部中斷0)的中斷請求标志位。IE1(IE0)=1,表示外部中斷1(外部中斷0)請求中斷,當CPU響應其中斷後,由硬件将IE1(IE0)自動清0;IE1(IE0)=0,表示外部中斷沒有請求中斷。

IT1(IT0):外部中斷1(0)的中斷觸發方式控制位。若将IT1(IT0)置0,則外部中斷1(0)為電平觸發方式。若将IT1(IT0)置1,則外部中斷1(0)為邊沿觸發方式。

TI:串行口發送中斷請求标志位。當串行口發送完一幀數據後,由硬件将TI置1,向CPU請求中斷。CPU響應中斷後,必須用軟件将TI清0。

RI:串行口接收中斷請求标志位。當串行口接收完一帖數據後,由硬件将RI置1,向CPU請求中斷。CPU響應中斷後,必須用軟件将RI清0。

2、中斷的開放和關閉

MCS-51單片機中斷的開放與關閉是由中斷允許寄存器IE的相應位來進行控制的。IE中各位的名稱如表所示。

單片機中斷系統使用方法(單片機初學者輕松入門之)5

IE中各位的定義如下:

EA:中斷允許總控制位。EA=1時,開放所有的中斷請求,但是否允許各中斷源的中斷請求,還要取決于各中斷源的中斷允許控制位的狀态。

ES:串行口中斷允許位。

ET1(ET0):定時器T1(T0)中斷允許位。

EX1(EX0):外部中斷1(0)中斷允許位。

中斷允許位為0時關閉相應中斷,為1時開放相應中斷。單片機系統複位後,IE中各中斷允許位均被清0,即關閉所有中斷。如需要開放相應中斷源,則應使用軟件進行置位。例如開放外部中斷0和定時器1,可使用如下指令:

EA=1; //開放總允許

EX0=1; //開放外部中斷0中斷

ET1=1; //開放定時器1中斷

或者

IE=0x85; //将相應位置1,開放相應中斷

3、中斷源的優先級控制

51單片機的中斷源可設置為兩個中斷優先級:高優先級中斷和低優先級中斷,從而可實現兩級中斷嵌套。

中斷優先級控制寄存器IP中各位的名稱如表所示。

單片機中斷系統使用方法(單片機初學者輕松入門之)6

IP中各位的定義如下:

PT0(PT1):定時器0(1)的中斷優先級控制位。

PX1(PX0):外部中斷1(0)的中斷優先級控制位。

PS:串行口的中斷優先級控制位。

中斷控制位為1時,相應中斷為高優先級,為0時相應中斷為低優先級。可以通過指令将相應位置1或清0。單片機複位後,IP全部清0。

4、響應中斷的條件

單片機響應中斷時,必須滿足以下幾個條件:

(1)有中斷源發出中斷請求。

(2)中斷允許總控制位及申請中斷的中斷源的中斷允許位均為1。

(3)沒有同級别或更高級别的中斷正在響應。

(4)必須在當前的指令執行完後,才能響應中斷。若正在執行RETI或訪問IE、IP的指令,則必須再另外執行一條指令後才可以響應中斷。

5、中斷響應遵循的規則

中斷響應遵循如下規則:

先高後低,停低轉高,高不理低、自然順序。

自然優先級按從低到高的順序是:串行口→定時器T1→外部中斷1→定時器T0→外部中斷0

6、中斷響應過程

CPU響應中斷時,由硬件自動執行如下操作:

(1)保護斷點,即把程序計數器PC的内容壓入堆棧保存。

(2)清内部硬件可清除的中斷請求标志位(IE0、IE1、TF0、TF1)。

(3)将被響應的中斷源的中斷服務程序入口地址送入PC,從而轉移到相應的中斷服務程序執行。

MCS-51單片機各中斷源中斷入口地址

單片機中斷系統使用方法(單片機初學者輕松入門之)7

7、中斷系統應用注意事項

在應用中斷系統時應在設計硬件和軟件時考慮解決如下問題:

(1)明确任務,确定采用哪些中斷源及中斷觸發方式。

(2)中斷優先級分配。

(3)中斷服務程序要完成的任務。

(4)程序初始化設置即開放相關中斷源。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved