2.6.3 輸出端口數(shù)據(jù)刷新方法
開關量輸出軟件抗干擾設計,主要是采取重復輸出的方法,這是一種提高輸出接口抗干擾性能的有效措施。對于那些用鎖存器輸出的控制信號,這些措施很有必要。在盡可能短的周期內,將數(shù)據(jù)重復輸出,受干擾影響的設備在還沒有來得及響應時,正確的信息又到來,這樣就可以及時防止誤動作的產(chǎn)生。在程序結構的安排上,可為輸出數(shù)據(jù)建立一個數(shù)據(jù)緩沖區(qū),在程序的周期性循環(huán)體內將數(shù)據(jù)輸出。對于增量控制型設備不能這樣重復送數(shù),只有通過檢測通道,從設備的反饋信息中判斷數(shù)據(jù)傳輸?shù)恼_與否。在執(zhí)行重復輸出功能時,對于可編程接口芯片,工作方式控制字與輸出狀態(tài)字一并重復設置,使輸出模塊可靠地工作。
2.6.4 軟件攔截技術
當竄入單片機系統(tǒng)的干擾作用在CPU 部位時,后果更加嚴重,將使系統(tǒng)失靈。最典型的故障是破壞程序計數(shù)器PC 的狀態(tài),導致程序從一個區(qū)域跳轉到另一個區(qū)域,或者程序在地址空間內“亂飛”,或者陷入“死循環(huán)”。使用軟件攔截技術可以攔截“亂飛”的程序或者使程序擺脫“死循環(huán)”,并將運行程序納入正軌,轉到指定的程序入口。
2.6.5 “軟件看門狗”技術
PC 受到干擾而失控,引起程序“亂飛”,也可能使程序陷入“死循環(huán)”。當軟件攔截技術不能使失控的程序擺脫“死循環(huán)”的困境時,通常采用程序監(jiān)視技術WDT TIMER(WDT),又稱“看門狗”技術,使程序脫離“死循環(huán)”。WDT 是一種軟、硬件結合的抗程序跑飛措施,其硬件主體是一個用于產(chǎn)生定時T 的計數(shù)器或單穩(wěn),該計數(shù)器或單穩(wěn)基本獨立運行,其定時輸出端接至CPU 的復位線,而其定時清零則由CPU 控制。在正常情況下,程序啟動WDT 后,CPU 周期性的將WDT 清零,這樣WDT 的定時溢出就不會發(fā)生,如同睡眠一般不起任何作用。在受到干擾的異常情況下,CPU 時序邏輯被破壞,程序執(zhí)行混亂,不可能周期性的將WDT 清零,這樣當WDT 的定時溢出時,其輸出使系統(tǒng)復位,避免CPU因一時干擾而陷入癱瘓的狀態(tài)。
3、結束語
隨著單片機系統(tǒng)的廣泛應用和技術的進步,電磁干擾問題越來越突出,推廣現(xiàn)有的、成熟的抗干擾技術,研究抗干擾的新技術、新方向是單片機應用技術的當務之急。在單片機應用系統(tǒng)設計及應用中,只要充分考慮設備的電磁兼容性,并通過各種技術措施來消除干擾,就可以大大提高設備的穩(wěn)定性和可靠性。