51單片機系列--中斷系統
- 中斷系統的結構
-
- TCON寄存器
- 中斷允許寄存器IE
- 中斷函數
- 中斷優先級寄存器IP
中斷系統的結構
有5個中斷請求源 INT0、T0、INT1、T1、TI/RI ;
中斷标志寄存器(TCON)
中斷允許寄存器(IE)
全局中斷允許
中斷優先級寄存器(IP)
查詢硬體
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0DOsJGaWhVZwZ0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL4EDN5QDN0MTMwITNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
TCON寄存器
外部中斷源有外部中斷0(INT0)–P3.2,和外部中斷1(INT1) – P3.3 。
TCON寄存器,可位操作
IT0:外部中斷0觸發方式控制位,IT0=0 時,為低電平觸發;IT0=1 時,為下降沿觸發。
IE0:外部中斷0中斷請求标志位,當有外部的中斷請求時,該位置1(這由硬體來完成),在CPU響應中斷後,由硬體将IE0清0。
IT1、IE1 的用途和 IT0、IE0 相似。
TF0:定時/計數器 T0 的溢出中斷标記。當定時/計數器 T0計數産生溢出時,由硬體置位TF0。當CPU響應中斷後,再由硬體将 TF0 清0.
TF1:與TF0相似。
TR0:定時/計數器0 的開閉控制位,當為1時定時/計數器打開,為0時關閉。
TR1:與TR0相似。
TI、RI:串行口發送、接收中斷。
中斷允許寄存器IE
可位操作
EA:中斷總控制位。EA=1,CPU 開放所有中斷;EA=0,CPU 禁止所有中斷。
ES:串行口中斷控制位。ES=1,允許串行口中斷。
ET1:定時/計數器 T1 中斷控制位。ET=1,允許T1中斷。
EX1:外部中斷1中斷控制位。EX=1,允許外部中斷1中斷。
ET0:定時/計數器T0中斷控制位。ET0=1,允許T0中斷。
EX0:外部中斷0中斷控制位。EX0=1,允許外部中斷0中斷。
中斷函數
定義形式:
void 函數名() interrupt 中斷号 using 寄存器工作組
其中,interrupt 是函數定義時的一個選項,加上這個選項即可将一個函數定義成中斷服務函數。
關鍵字 interrupt 後面 n 是中斷号
中斷序号:
中斷優先級寄存器IP
可按位尋址
正常優先級:
IP中某位設為1,則相應的中斷就是高優先級;否則就是低優先級。在同一個優先級下,中斷響應的順序和自然優先一樣。
PS:串行口中斷優先級控制位。
PT1:定時器1優先級控制位。
PX1:外部中斷1優先級控制位。
PT0:定時/計數器0優先級控制位。
PX0:外部中斷0優先級控制位。