<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > MCS51系列單片機軟件復位的方法

MCS51系列單片機軟件復位的方法

作者: 時(shí)間:2012-04-27 來(lái)源:網(wǎng)絡(luò ) 收藏

4. 在所有指令中,只有RETI指令能清除中斷激活標志。出錯處理程序ERR主要是完成這一功能,其它的善后工作交由后的系統去完成。為此,我們重新設計T1中斷子程序如下所示:

PT1:?。茫校獭。校保病?;高級中斷程序發(fā)光二極管閃爍

INC?。常埃取?;WATCHDOG計數器增值

MOV?。?,30H

ADD?。?,#0FD

JC?。牛遥摇?;達到3次否?

RETI

ERR:?。茫蹋摇。牛痢?;關(guān)中斷

CLR?。痢?;準備地址(0000H)

PUSH?。粒茫?p>PUSH?。粒茫?p>RETI??;清除中斷激活標志并

這段程序先關(guān)中斷,以便后續處理能順利進(jìn)行,然后用RETI指令替代LJMP指令,從而既清除了中斷激活標志又完成了轉向0000H的任務(wù)。按這樣改好后程序再運行,結果仍不理想:按下按鈕后,有時(shí)只有主程序和高級中斷子程序能迅速恢復正常,而低級中斷仍有被關(guān)閉的可能。如果按如下把干擾轉移到低級中斷中,則按下按鈕后低級中斷必然被關(guān)閉:

LOOP:?。茫校獭。校保?p>MOV?。遥?,#80H

MOV?。遥?,#0H

TT1:?。模剩危凇。遥?,TT1

DJNZ?。遥?,TT1

SJMP?。蹋希希?p>PT0:?。茫校獭。校保?p>JB?。埃埃?,STOP

RETI

STOP:?。蹋剩停小。樱裕希小?;掉入死循環(huán)。

仔細分析后可能得出結論:當WATCHDOG是嵌套在低級中斷中起作用時(shí),復位后只清除了高級中斷激活標志,低級中斷標志仍然被置位,從而使低級中斷一直被關(guān)閉。

5. 修改出錯處理如下:

ERR:?。茫蹋摇。牛痢?;正確的復位入口

MOV?。叮叮?,#0AAH??;重建上電標志

MOV?。叮罚?,#55H

MOV?。模校裕?,#ERR1??;準備第一次返回地址

PUSH?。模校?p>PUSH?。模校?p>RETI??;清除高級中斷激活標志

ERR1:?。茫蹋摇。?p>PUSH?。粒茫?p>PUSH?。粒茫?p>RETI??;清除低級中斷激活標志



關(guān)鍵詞: 復位 方法 軟件 單片機 系列 MCS51

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>