新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機中斷處理過程:中斷響應 中斷處理 中斷返回詳解

        單片機中斷處理過程:中斷響應 中斷處理 中斷返回詳解

        作者: 時間:2013-05-13 來源:網(wǎng)絡 收藏

        過程可分為三個階段。

        是CPU對中斷源中斷請求的響應,包括保護斷點和將程序轉向中斷服務程序的入口地址(通常稱矢量地址)。

        中斷響應過程

        中斷響應過程包括保護斷點和將程序轉向中斷服務程序的入口地址。首先,中斷系統(tǒng)通過硬件自動生成長調(diào)用指令(LACLL),該指令將自動把斷點地址壓入堆棧保護(不保護累加器A、狀態(tài)寄存器PSW和其它寄存器的內(nèi)容),然后,將對應的中斷入口地址裝入程序計數(shù)器PC(由硬件自動執(zhí)行),使程序轉向該中斷入口地址,執(zhí)行中斷服務程序。MCS-51系列各中斷源的入口地址由硬件事先設定,分配如下:

        中斷源入口地址

        外部中斷00003H

        定時器T0中斷000BH

        外部中斷10013H

        定時器T1中斷001BH

        串行口中斷 0023H

        使用時,通常在這些中斷入口地址處存放一條絕對跳轉指令,使程序跳轉到用戶安排的中斷服務程序的起始地址上去。

        是指中斷服務完后,計算機返回原來斷開的位置(即斷點),繼續(xù)執(zhí)行原來的程序。中斷返回由中斷返回指令RETI來實現(xiàn)。該指令的功能是把斷點地址從堆棧中彈出,送回到程序計數(shù)器PC,此外,還通知中斷系統(tǒng)已完成,并同時清除優(yōu)先級狀態(tài)觸發(fā)器。特別要注意不能用“RET”指令代替“RETI”指令。

        中斷請求的撤除

        CPU響應中斷請求后即進入中斷服務程序,在中斷返回前,應撤除該中斷請求,否則,會重復引起中斷而導致錯誤。MCS-51各中斷源中斷請求撤消的方法各不相同,分別為:

        1)定時器中斷請求的撤除

        對于定時器0或1溢出中斷,CPU在響應中斷后即由硬件自動清除其中斷標志位TF0或TF1,無需采取其它措施。

        2)串行口中斷請求的撤除

        對于串行口中斷,CPU在響應中斷后,硬件不能自動清除中斷請求標志位TI、RI,必須在中斷服務程序中用軟件將其清除。

        3)外部中斷請求的撤除

        外部中斷可分為邊沿觸發(fā)型和電平觸發(fā)型。

        對于邊沿觸發(fā)的外部中斷0或1,CPU在響應中斷后由硬件自動清除其中斷標志位IE0或IE1,無需采取其它措施。

        矢量控制相關文章:矢量控制原理


        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 苍山县| 闻喜县| 福建省| 曲松县| 吐鲁番市| 邛崃市| 偏关县| 淮滨县| 河池市| 洛扎县| 叙永县| 都江堰市| 甘德县| 合水县| 德格县| 和平县| 平原县| 嘉定区| 墨竹工卡县| 读书| 恩施市| 巢湖市| 西乌珠穆沁旗| 邹平县| 靖远县| 林周县| 鄄城县| 清水县| 郑州市| 宝兴县| 平山县| 青阳县| 临武县| 密云县| 北宁市| 德兴市| 宁阳县| 铜梁县| 龙里县| 筠连县| 青川县|