中斷響應(yīng):
1.響應(yīng)條件
cpu響應(yīng)中斷的條件有:
①有中斷源發(fā)出中斷請(qǐng)求;
②中斷總允許位ea=1,即cpu開(kāi)中斷;
③申請(qǐng)中斷的中斷源的中斷允許位為1;
滿(mǎn)足以上條件,cpu響應(yīng)中斷;如果中斷受阻,cpu不會(huì)響應(yīng)中斷。
2.響應(yīng)過(guò)程
單片機(jī)一旦響應(yīng)中斷,首先置位響應(yīng)的優(yōu)先級(jí)觸發(fā)器,然后執(zhí)行一個(gè)硬件子程序調(diào)用,把斷點(diǎn)地址壓入堆棧保護(hù),然后將對(duì)應(yīng)的中斷入口地址裝入程序計(jì)數(shù)器pc,使程序轉(zhuǎn)向該中斷入口地址,以執(zhí)行中斷服務(wù)程序。
中斷處理:cpu響應(yīng)中斷結(jié)束后即轉(zhuǎn)至中斷服務(wù)程序的入口。從中斷服務(wù)程序的第一條指令開(kāi)始到返回指令為止,這個(gè)過(guò)程稱(chēng)為中斷處理或稱(chēng)中斷服務(wù)。中斷處理包括兩部分內(nèi)容:一是保護(hù)現(xiàn)場(chǎng),二是為中斷源服務(wù)。
中斷返回:中斷處理程序的最后一條指令是中斷返回指令reti。它的功能是將斷點(diǎn)彈出送回pc中,使程序能返回到原來(lái)被中斷的程序繼續(xù)執(zhí)行。