一、
中斷允許寄存器
IE
CPU對中斷源的開放或中斷屏蔽的控制是通過中斷允許寄存器IE設置的,IE既可按字節地址尋址(其字節地址為A8H),又可按位尋址。AT89S52 單片機中的6個中斷矢量都是可屏蔽中斷,通過對IE的某些位置位和清0,允許或禁止某個中斷,當對IE的EA位清0時,屏蔽全部中斷源。IE中各標志位功能如表1所示:
CPU對中斷源的開放或中斷屏蔽的控制是通過中斷允許寄存器IE設置的,IE既可按字節地址尋址(其字節地址為A8H),又可按位尋址。AT89S52 單片機中的6個中斷矢量都是可屏蔽中斷,通過對IE的某些位置位和清0,允許或禁止某個中斷,當對IE的EA位清0時,屏蔽全部中斷源。IE中各標志位功能如表1所示:
例:開放外部中斷0
字節操作:MOV IE,#81H 或 MOV 0A8H,#81H
位操作:SETB EA SETB EX0
二、AT89S52的優先級寄存器IP
AT89S52單片機的中斷系統提供兩個中斷優先級,對於每一個中斷請求源都可以編程為高優先級中斷源或低優先級中斷源,以便實現兩級中斷嵌套。中斷優先級是由片內的中斷優先級寄存器IP(特殊功能寄存器)控制的。IP寄存器字節地址位B8H,可以位尋址。IP各標志位的功能如表2所示:
AT89S52中斷系統具有兩級優先級(由IP寄存器把各個中斷源的優先級分為高優先級和低優先級),它們遵循下列兩條基本規則:
(1)低優先級中斷源可被高優先級中斷源所中斷,而高優先級中斷源不能被任何中斷源所中斷;
(2)一種中斷源(不管是高優先級或低優先級)一旦得到響應,與它同級的中斷源不能再中斷它。
為了實現上述兩條規則,中斷系統內部包含兩個不可尋址的優先級狀態觸發器。其中一個用來指示某個高優先級的中斷源正在得到服務,並阻止所有其它中斷的響應;另一個觸發器則指出某低優先級的中斷源正得到服務,所有同級的中斷都被阻止,但不阻止高優先級中斷源。當同時收到幾個同一優先級的中斷時,響應哪一個中斷源取決於內部查詢順序。其優先級排列如表3。