以下內(nèi)容參考郭天祥的書籍:
EA:全局中斷允許位,要想打開任何中斷,EA都必須為1.然后再允許某個特定的中斷。ES:串行口中斷允許。ES=1時,串口接收或者發(fā)送完成數(shù)據(jù)以后會引起中斷(TI=1,或者RI=1)ET1:定時計數(shù)器1中斷允許。ET1=1時,當(dāng)定時計數(shù)器1計數(shù)滿,溢出后引起中斷,可在中斷函數(shù)中處理定時器。EX1:外部中斷1允許位。EX=1時,外部條邊沿(或者電平)中斷信號來后,會引起外部中斷,可在外部中斷函數(shù)中處理事件。ET0/EX0功能跟上面一樣,只是換了個定時器或者外部中斷。
PS:串行口中斷優(yōu)先級控制位。PS=1設(shè)定串行口為高優(yōu)先級中斷;PS=0為低優(yōu)先級中斷。
PT1:T1中斷優(yōu)先級控制位。PT1=1設(shè)定定時器T1為高優(yōu)先級中斷;PT1=0為低優(yōu)先級中斷。
PX1:外部中斷1優(yōu)先級控制位。PX1=1設(shè)定定時器外部中斷1為高優(yōu)先級中斷;PX1=0為低優(yōu)先級中斷。
PT0:T0中斷優(yōu)先級控制位。PT0=1設(shè)定定時器T0為高優(yōu)先級中斷;PT0=0為低優(yōu)先級中斷。
PX0:外部中斷0優(yōu)先級控制位。PX0=1設(shè)定定時器外部中斷0為高優(yōu)先級中斷;PX0=0為低優(yōu)先級中斷。
例:設(shè)有如下要求,將T0、外中斷1設(shè)為高優(yōu)先級,其它為低優(yōu)先級,求IP的值。
IP的首3位沒用,可任意取值,設(shè)為000,后面根據(jù)要求寫就可以了因此,最終,IP的值就是06H。
在上例中,如果5個中斷請求同時發(fā)生,求中斷響應(yīng)的次序。
響應(yīng)次序為:定時器0->外中斷1->外中斷0->實時器1->串行中斷。
其中低四位定義定時器/計數(shù)器T0,高四位定義定時器/計數(shù)器T1,各位的說明:
?、?,GATE——門控制。
●GATE=1時,由外部中斷引腳INT0、INT1來啟動定時器T0、T1。
當(dāng)INT0引腳為高電平時TR0置位,啟動定時器T0;
當(dāng)INT1引腳為高電平時TR1置位,啟動定時器T1。
●GATE=0時,僅由TR0,TR1置位分別啟動定時器T0、T1。
?、颍珻/T——功能選擇位
C/T=0時為定時功能,C/T=1時為計數(shù)功能。
置位時選擇計數(shù)功能,清零時選擇定時功能。
Ⅲ,M0、M1——方式選擇功能
由于有2位,因此有4種工作方式
=================================================================
M1M0 工作方式 計數(shù)器模式 TMOD(設(shè)置定時器模式) ==
0 0 方式0 13位計數(shù)器 TMOD=0x00 ==
0 1 方式1 16位計數(shù)器 TMOD=0x01 ==
1 0 方式2 自動重裝8位計數(shù)器 TMOD=0x02 ==
1 1 方式3 T0分為2個8位獨立計數(shù)器,T1為無中斷重裝8位計數(shù)器 TMOD=0x03 ==
=================================================================
=============================================================================================
TF1 TCON.7 8FH 定時器1溢出標(biāo)志;當(dāng)定時器/計數(shù)器發(fā)生溢出時由硬件置位;該位可以用軟件清零,當(dāng)CPU轉(zhuǎn)向中斷服務(wù)程序時該位被自動清零,要注意的是, 如果使用定時器中斷,那么改位不用人為操作,但是是用軟件的話,查詢到該位置1后,就需要用軟件清0.
TR1 TCON.6 8EH 定時器1運行控制,由軟件置位和清零,分別可以啟動和停止定時/計數(shù)器1,當(dāng)GATE=1,且INT1=1時,TR1=1啟動定時器。當(dāng)GATE=0, TR1=1啟動定時器。
TF0 TCON.5 8DH 定時器0標(biāo)志
TR0 TCON.4 8CH 定時器0運行控制
IE1 TCON.3 8BH 外部中斷1的中斷標(biāo)志,當(dāng)探測到外部中斷1時由硬件置位,當(dāng)轉(zhuǎn)入中斷服務(wù) 程序后用軟件清零
IT1 TCON.2 8AH 外部中斷1控制位,其置位和清零由軟件設(shè)置,分別對應(yīng)著外部中斷1的下降沿觸發(fā)和低電平觸發(fā)
當(dāng)IT1=1,為電平觸發(fā)方式,每個機器周期的S5P2采樣INT1引腳,若INT1腳為低電平,則置1,否則IE1清0。
當(dāng)IT1=0,INT1為跳變延觸發(fā)方式,當(dāng)?shù)谝粋€周期采樣到INT1位低電平時,則IE1=1,表示外部中斷1正在向CPU申請中斷。當(dāng)CPU響應(yīng)中斷,轉(zhuǎn)向中斷服務(wù)程序時,該位由硬件清0.
IE0 TCON.1 89H 外部中斷0的中斷標(biāo)志
IT0 TCON.0 88H 外部中斷0控制位
=============================================================================================
可以通過TMOD寄存器中的M1M0來進(jìn)行工作方式的選擇