智能接觸器可靠性設(shè)計的軟件實現(xiàn)方法(06-100)
軟件博弈(Software subgame)技術(shù)借助經(jīng)濟學(xué)的博弈思想,在零侵蝕接觸器的控制器程序設(shè)計時,充分考慮來自不同渠道的各種干擾對監(jiān)控程序和功能模塊的影響及消除辦法。下面舉例說明:
本文引用地址:http://2s4d.com/article/81284.htm軟件屏蔽法
利用微處理器的“空閑方式”,使CPU平時處在“磕睡狀態(tài)”;當(dāng)有任務(wù)時,用中斷喚醒它,處理完工作后,再進(jìn)入“打磕睡”狀態(tài)。這樣一來控制器既節(jié)省能源,又減少了沿傳輸線而來的隨機干擾對系統(tǒng)的影響。
軟件屏蔽法的具體做法是在主程序中加上一小段指令:
MOV PCON ,#01H ;IDL←1
NOP
NOP
上述指令段中的“PCON”為電源控制寄存器,“IDL”為空閑方式控制位。“軟件屏蔽法”特別適合于以CMOS型單片機(80C31、80C51、87C51等)為核心,控制對象運動簡單,而環(huán)境干擾又較大的實時控制系統(tǒng)。
軟件陷阱法
軟件陷阱法的指導(dǎo)思想是:把控制系統(tǒng)中未使用的單元,用某種“引導(dǎo)指令”填滿,作為“陷阱”,來捕捉“彈飛”的程序,并強行將捕獲的程序引向一個特定的地址,在那里有一段專門進(jìn)行錯誤處理的程序,來恢復(fù)系統(tǒng)的正常運行。如果把該段錯誤處理程序的入口標(biāo)號稱為“ERR”,則軟件陷阱的核心就是一條“LJMP ERR”的指令。為了加強其捕捉彈飛程序的效果,一般還在其前面加兩條“NOP”指令。即“軟件陷阱”一般由三條指令構(gòu)成,它們是:
NOP
NOP
LJMP ERR
下面,針對51系列單片機的具體情況給出軟件陷阱的實際用法。
·對中斷向量區(qū)設(shè)置軟件陷阱
如果干擾信號使未使用的中斷開放,并激活這些中斷時,就會導(dǎo)致監(jiān)控程序運行混亂;但如果在這些地方設(shè)置軟件陷阱,就能及時捕捉到錯誤中斷,提高系統(tǒng)的可靠性。
·對未使用的ROM空間設(shè)置軟件陷阱
單片機外擴展程序存儲器常常使用2764、27128、27512等EPROM芯片,但嵌入式應(yīng)用系統(tǒng)很少有將其空間全部用完,剩余的大片未編程ROM空間,芯片都維持“0FFH”(原狀態(tài)),而“0FFH”對MCS51系列單片機指令來說,恰巧是一個單字節(jié)指令:“MOV R7,A”。若程序彈飛到這一區(qū)域,將順流而下,不再跳躍(除非又受到新的干擾)。
評論