您好,歡迎訪(fǎng)問(wèn)上?,F(xiàn)易電子元器件有限公司網(wǎng)站!
中斷源:引起中斷的事件
中斷請(qǐng)求:中斷源向CPU提出處理的請(qǐng)求
斷點(diǎn):發(fā)生中斷時(shí)被打斷程序的暫停點(diǎn)
中斷響應(yīng):CPU暫?,F(xiàn)行程序而轉(zhuǎn)為響應(yīng)中斷請(qǐng)求的過(guò)程
中斷處理程序:處理中斷源的程序
中斷處理:CPU執(zhí)行有關(guān)的中斷處理程序
中斷返回:返回?cái)帱c(diǎn)的過(guò)程
調(diào)用有點(diǎn)相似、但兩者是不同的概念。
源不同。中斷是由外部中斷源產(chǎn)生的、具有不可預(yù)測(cè)和隨機(jī)性、比如拋異常。子程序是由主程序安排調(diào)用的。
響應(yīng)不同。中斷系統(tǒng)需要保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)、子程序只需保存斷點(diǎn)。
功能不同。中斷程序主要處理CPU外部異步事件、子程序調(diào)用是為主程序服務(wù)。
外部中斷源:外部硬件資源產(chǎn)生。上下沿觸發(fā)和高低電平觸發(fā)。
定時(shí)中斷源:定時(shí)器/計(jì)數(shù)器溢出觸發(fā)。
串口中斷源:串行通信時(shí)發(fā)送或接收完畢信息觸發(fā)。
IE1:外部中斷1請(qǐng)求標(biāo)志位。
IT1:外部中斷1觸發(fā)方式選擇位。當(dāng)IT1=0,為低電平觸發(fā)方式;當(dāng)IT1=1,為下降沿觸發(fā)方式。
IE0:外部中斷0請(qǐng)求標(biāo)志位。
IT0:外部中斷0觸發(fā)方式選擇位。 當(dāng)IT0=0,為低電平觸發(fā)方式;當(dāng)IT0=1,為下降沿觸發(fā)方式。
RI:串行接口時(shí)接收信息完畢后、硬件自動(dòng)置RI=1、CPU響應(yīng)中斷。注意不會(huì)自動(dòng)清零置RI=0、需軟件置RI=0
TI:串行接口發(fā)送信息完畢后、硬件自動(dòng)置TI=1、CPU響應(yīng)中斷。注意不會(huì)自動(dòng)清零置TI=0、需軟件置TI=0
1、確定工作方式(即對(duì)TMOD賦值);
2、預(yù)置定時(shí)或計(jì)數(shù)的初值(可直接將初值寫(xiě)入TH0、TL0或TH1、TL1);
3、根據(jù)需要開(kāi)放定時(shí)器/計(jì)數(shù)器的中斷(直接對(duì)IE位賦值);
4、啟動(dòng)定時(shí)器/計(jì)數(shù)器(若已規(guī)定用軟件啟動(dòng),則可把TR0或TR1置“1”;若已規(guī)定由外中斷引腳電平啟動(dòng),則需給外引腳加啟動(dòng)電平。當(dāng)實(shí)現(xiàn)了啟動(dòng)要求后,定時(shí)器即按規(guī)定的工作方式和初值開(kāi)始計(jì)數(shù)或定時(shí))。
EX1:外部中斷1允許位;
EX0:外部中斷0允許位;
ET1:定時(shí)/計(jì)數(shù)器T1中斷允許位;
ET0:定時(shí)/計(jì)數(shù)器T0中斷允許位;
ES:串行口中斷允許位;
EA: CPU中斷允許(總允許)位。
0為低優(yōu)先級(jí)、1為高優(yōu)先級(jí)
PS:串行接口中斷優(yōu)先級(jí)設(shè)置位
PT1:定時(shí)器/計(jì)數(shù)器中斷1中斷優(yōu)先級(jí)設(shè)置位
PT0:定時(shí)器/計(jì)數(shù)器中斷0中斷優(yōu)先級(jí)設(shè)置位
PX1:外部中斷1中斷優(yōu)先級(jí)設(shè)置位
PX0:外部中斷0中斷優(yōu)先級(jí)設(shè)置位
外部中斷0(INT0),對(duì)應(yīng)中斷號(hào)是0, 中斷入口地址0003H
定時(shí)/計(jì)數(shù)器0(T1),對(duì)應(yīng)中斷號(hào)1 ,中斷入口地址000BH
外部中斷1(INT1),中斷號(hào)2 入口地址0013H
定時(shí)/計(jì)數(shù)器1(T1)中斷號(hào)3 入口地址001BH
串行口(RI/TI)中斷號(hào)4 入口地址0023H
這五個(gè)是AT89S51的,52還多了下面這個(gè)
定時(shí)/計(jì)數(shù)器2(T2)中斷號(hào)5,入口地址002BH
函數(shù)名()interrupt 0 {} //對(duì)應(yīng)外部中斷0;
函數(shù)名()interrupt 1 {} //對(duì)應(yīng)定時(shí)器/計(jì)數(shù)器0中斷;
函數(shù)名()interrupt 2 {} //對(duì)應(yīng)外部中斷1;
函數(shù)名()interrupt 3 {} //對(duì)應(yīng)定時(shí)器/計(jì)數(shù)器1中斷;
函數(shù)名()interrupt 4 {} //對(duì)應(yīng)串口中斷;
一共5種中斷,優(yōu)先級(jí)自上向下;
上?,F(xiàn)易電子元器件有限公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像
CopyRight 2020-2025 29711999.com.cn All rights reserved 滬ICP備2020031792號(hào)