8051中斷結構


在本節中,我們將瞭解Intel 8051微控制器的中斷結構。

中斷基本上是暫時掛起主程式、將控制權傳遞給外部源並執行其任務的事件。然後,它將控制權傳遞迴主程式中斷處。

8051有五個中斷。這些中斷是INT0INT1,TO,T1,TI/RI。所有中斷都可以使用IE(中斷允許)暫存器啟用或停用。

這些中斷的中斷地址如下所示:

中斷
地址
INT00003H
INT1000BH
T00013H
T1001BH
TI/RI0023H


中斷允許(IE)暫存器

此暫存器可用於以程式設計方式啟用或停用中斷。此暫存器是特殊功能暫存器(SFR)。地址為A8H。此位元組是按位定址的。因此,使用者可以對其進行程式設計。此暫存器中的位具有不同的含義。暫存器結構如下所示:

位地址
AF
AE
AD
AC
AB
AA
A9
A8
位詳細資訊
EA
X
X
ES
ET1
EX1
ET0
EX0


現在,讓我們看看位詳細資訊以及值低(0)和高(1)時的不同操作。

位詳細資訊
高值(1)
低值(0)
EA
最低有效5位可以決定這五個中斷的啟用或停用。
停用所有五個中斷。它只是忽略其餘五個位。
ES
啟用序列埠中斷
停用序列埠中斷
ET1
啟用定時器1中斷
停用定時器1中斷
EX1
啟用外部中斷1 (INT1)
停用外部中斷1 (INT1)
ET0
啟用定時器0中斷
停用定時器0中斷
EX0
啟用外部中斷0 (INT0)
停用外部中斷0 (INT0)



中斷優先順序(IP)暫存器

所有這五個中斷都可以處於一到兩個中斷級別。優先順序為1級和0級。1級表示較高優先順序,0級表示較低優先順序。此IP暫存器可用於儲存每個中斷的優先順序。這也是一個按位定址的SFR。其地址為B8H。

位地址
BF
BE
BD
BC
BB
BA
B9
B8
位詳細資訊
X
X
X
PS
PT1
PX1
PT0
PX0


現在,讓我們看看位詳細資訊以及值低(0)和高(1)時的不同操作。

位詳細資訊
高值(1)
低值(0)
PS
設定序列埠中斷的1級優先順序
設定序列埠中斷的0級優先順序
PT1
設定定時器1中斷的1級優先順序
設定定時器1中斷的0級優先順序
PX1
設定外部中斷1 (INT1) 的1級優先順序
設定外部中斷1 (INT1) 的0級優先順序
PT0
設定定時器0中斷的1級優先順序
設定定時器0中斷的0級優先順序
PX0
設定外部中斷0 (INT0) 的1級優先順序
設定外部中斷0 (INT0) 的0級優先順序


當所有五個中斷都處於相同的優先順序級別,並且如果所有中斷都被啟用,則中斷順序將為INT0,T0,INT1,T1,TI/RI。

某些特定的優先順序暫存器值可用於維護中斷的優先順序。假設優先順序暫存器的值為xxx00101,則表示順序為INT0INT1,TI/RI,T1,T0。但並非所有順序都是可行的。INT0INT1,TI/RI,T1,T0是無效的。


外部中斷

8051的外部中斷是INT0INT1。這些中斷可以程式設計為邊沿觸發或電平觸發。TCON暫存器可用於將外部中斷程式設計為邊沿觸發或電平觸發。TCON是定時器控制暫存器。TCON是另一個按位定址的SFR。這裡的地址是88H。

位地址
8F
8E
8D
8C
8B
8A
89
88
位詳細資訊
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0


現在,讓我們看看位詳細資訊以及值低(0)和高(1)時的不同操作。

位詳細資訊
高值(1)
低值(0)
IT0
將(INT0)設定為負邊沿觸發輸入。
將(INT0)設定為低電平觸發輸入。
IT1
將(INT1)設定為負邊沿觸發輸入。
將(INT1)設定為低電平觸發輸入。
IE0
INT0被啟用為電平觸發時,這將為1。
INT0被啟用為邊沿觸發時,這將為0。
IE1
INT1被啟用為電平觸發時,這將為1。
INT1被啟用為邊沿觸發時,這將為0。
TR0
將定時器0設定為執行模式
將定時器0設定為停止模式。
TR1
將定時器1設定為執行模式
將定時器1設定為停止模式。
TF0
定時器T0溢位時為高。
重置定時器T0後,這也將變為0狀態
TF1
定時器T1溢位時為高。
重置定時器T1後,這也將變為0狀態。


IT0和IT1代表中斷型別。這些位用於決定INT0INT1是電平觸發還是邊沿觸發。

IE0和IE1位用於指示外部中斷的狀態。這些位可以由微控制器本身設定或重置。

前四位是關於定時器的狀態資訊。當TR0和TR1為1時,表示定時器的執行模式。這些位提供對定時器執行的軟體控制。定時器也可以由硬體控制。硬體模式的優先順序高於軟體模式。

TF0和TF1分別用於指示定時器T0和T1的溢位。發生溢位時,這些標誌設定為1。當中斷由某個中斷服務子程式(ISS)處理時,這些標誌將為0。

序列埠中斷

序列埠既可以用作傳送模式,也可以用作接收模式。傳送的中斷狀態由TI提供,接收的中斷狀態由RI提供。它們是SCON(序列控制)的兩位。這也是一個按位定址的SFR。地址為98H

位地址
9F
9E
9D
9C
9B
9A
99
98
位詳細資訊
SM0
SM1
SM2
REN
TB8
RB8
TI
RI


這些位的意義如下:

位詳細資訊
描述
SM0
這是序列埠模式0移位暫存器
SM1
這是序列埠模式1(8位UAR+可變)
SM2
在模式2或3中啟用多處理器通訊
REN
由軟體設定或重置以啟用或停用接收
TB8
它指示在模式2或3中將要傳送的第9位。它可以由軟體設定或重置
RB8
在模式2或3中,第9位在模式1中接收。
TI
傳送中斷標誌。它可以由硬體設定。
RI
接收中斷標誌。它可以由硬體設定,但必須由軟體復位。


8051的中斷控制系統如下所示:


更新於:2020年6月27日

21K+ 瀏覽量

啟動你的職業生涯

完成課程獲得認證

開始
廣告