999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種防止程序跑飛的“熱啟動”方法

2004-03-18 12:01:06郭春柱
電子世界 2004年3期
關鍵詞:指令程序系統

郭春柱

在編寫、調試系統軟件的過程中,往往會出現這樣的情況:編程時只注重每一條指令的執行結果而忽略指令執行后相應標志位狀態的變化;或是MCU系統投入運行后,由于外界干擾使MCU內核三總線上的地址信號錯亂而導致程序運行的失控,這些都將導致程序跑飛,而更有甚者將程序引入死循環使得整個系統完全癱瘓。如何攔截失去控制的程序流向?如何盡可能無擾動地恢復系統正常運行狀態呢?筆者通過實踐,提出了一種在不增加系統制作、調試的硬件投資和設備基礎上,能夠有效防止程序跑飛軟件容錯的設計方法。

1.軟件陷阱的設計 當單片機的CPU受到干擾后,往往會誤將一些操作數當作指令碼來執行,而導致程序運行的混亂。例如當程序跑飛到某一雙字節指令上,就可能落到其操作數上而將操作數當作指令碼來執行;當然,若程序跑飛到三字節指令上,因三字節指令有兩個操作數,那么出錯的概率就更大了。因此在MCS-51 系統中,在對程序流向起決定作用的雙字節或三字節指令(如LCALL、ACALL、LJMP、AJMP、SJMP、JZ、JNZ、CJNE、DJNZ、JC、JNC、JB、JNB、JBC、RET、RETI等)之后,需增加一段軟件陷阱程序,才能使得跑飛的程序很快被納入程序的正常軌道。這個軟件陷阱程序可由三條指令構成,具體程序代碼如下:

NOP

NOP

LJMP WRONG

其中WRONG為出錯處理程序的標號。這段軟件陷阱程序可依據實際的系統軟件編程情況相應安排在未被使用的中斷向量區(例如未使用串行口中斷,就在ORG 0023H指令之后設陷阱)、未被使用的ROM空間中、讀取數據表格或散轉表格指令之后、關鍵的程序區(如RET、RETI、LJMP、AJMP、SJMP等指令之后)等位置上。

2.出錯處理程序的設計 以上的軟件陷阱程序只解決了如何發現系統被干擾和如何捕捉住失控的程序。當然,我們重點考慮應當是如何讓MCU根據被破壞的現場殘留信息使程序段自動恢復到正常的工作狀態。在此我們可應用一系列的指令來模擬硬件復位功能,在這種軟件復位方法中可根據系統編程的實際需要,對程序涉及到的各專用寄存器在主程序初始化過程中進行復位;而對于硬件復位方法中能夠自動清除原先被激活的中斷標志位的功能,可以通過以下程序段的設計來模擬完成。這部分程序代碼如下:

WRONG: CLREA;關中斷(軟件復位程序)

MOV DPTR,#ERR ;準備返回地址

PUSHDPL

PUSHDPH

RETI;清除高級中斷激活標志

ERR:CLRA ;準備復位地址

PUSHACC ;壓入復位地址

PUSHACC

RETI;清除低級中斷激活標志

這段程序先執行關中斷,以便后續復位工作能順利地進行,然后用兩個RETI指令清除了所有可能存在的已被激活的中斷標志位。對于軟件陷阱捕捉來的程序只激活一個中斷標志位的情況也不會妨礙程序復位后的執行。

采用防止程序跑飛的“熱啟動”方法可以有效地提高系統運行的可靠性,還可用于PIC、AVR等其它類型的MCU應用系統中,具有實用性、通用性等優點。并且,只通過簡單改變這段程序,還可作為其它系統程序模塊的一種容錯設計方案。

猜你喜歡
指令程序系統
聽我指令:大催眠術
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 91在线国内在线播放老师| 国产福利免费观看| 国产免费黄| a免费毛片在线播放| 国产精品入口麻豆| 亚洲色图欧美在线| 国产成年无码AⅤ片在线 | 国产裸舞福利在线视频合集| 欧美精品不卡| 久久综合丝袜长腿丝袜| 热伊人99re久久精品最新地| 一区二区三区四区日韩| 美女高潮全身流白浆福利区| 日韩乱码免费一区二区三区| 91久久国产成人免费观看| 精品国产女同疯狂摩擦2| 国产综合日韩另类一区二区| 伊人精品成人久久综合| 9啪在线视频| 99国产在线视频| 欧美成人午夜视频| 天天躁日日躁狠狠躁中文字幕| 亚洲欧美在线综合一区二区三区 | 波多野结衣久久高清免费| 免费一级成人毛片| 久热99这里只有精品视频6| 国产成人免费高清AⅤ| 国产精品成人啪精品视频| 色久综合在线| 国产白浆在线| 日韩精品资源| 欧美黄色a| 精品人妻无码中字系列| 无码av免费不卡在线观看| 国产一区二区三区夜色| 亚洲精品麻豆| 91精品啪在线观看国产| 97se亚洲综合在线天天| 秋霞国产在线| 日本91视频| 激情午夜婷婷| 亚洲一区免费看| 九九热视频在线免费观看| 中文字幕永久视频| 欧美啪啪一区| 久久国产av麻豆| 中文字幕欧美日韩| 亚洲啪啪网| 无码福利视频| 欧美午夜视频在线| 91啦中文字幕| 欧美日韩专区| 18禁高潮出水呻吟娇喘蜜芽| 精品国产香蕉在线播出| 欧美成人区| 亚洲高清日韩heyzo| 亚洲日韩精品欧美中文字幕 | 色视频国产| 一本久道热中字伊人| 在线欧美a| 精品午夜国产福利观看| 精品无码一区二区三区在线视频| 亚洲二三区| 狠狠色狠狠综合久久| 无码aⅴ精品一区二区三区| 激情影院内射美女| 欧美精品1区2区| 亚洲综合激情另类专区| 超薄丝袜足j国产在线视频| 久久免费视频6| 97久久超碰极品视觉盛宴| 国产三级a| 深夜福利视频一区二区| 成人午夜视频网站| 小蝌蚪亚洲精品国产| 全部毛片免费看| 中文字幕在线看| 婷婷丁香色| 婷婷亚洲视频| 波多野结衣中文字幕久久| 国产微拍一区| 一级毛片免费观看久|