新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 單片機系統軟件抗干擾策略在通信電源中的應用

        單片機系統軟件抗干擾策略在通信電源中的應用

        作者: 時間:2012-02-14 來源:網絡 收藏
        3 軟件抗干擾技術

          軟件抗干擾技術是當系統受干擾后時系統恢復正常運行或輸入信號受干擾后去偽求真的一種輔助方法,因此軟件抗干擾是被動措施,而硬件抗干擾是主動措施。軟件抗干擾技術所研究的主要內容,其一是采取軟件的方法抑制疊加在模擬輸入信號上噪聲的影響,如數字濾波技術;其二是在因干擾而使運行程序發生混亂,導致程序亂飛和陷入死循環時,采取使程序納入正軌的措施,這些措施可以由軟件單獨實現,也可以采用軟硬件相結合的方法來實現。

          對于已進入單片機的噪聲,必須采取對應措施,盡量維持系統功能,避免導致嚴重后果。如果CPU已產生誤動作或和存儲器內容已被誤修改,則應通過在應用程序中加入必要的代碼進行自恢復。通常的軟件抗干擾措施有:數字濾波方法、輸入口信號重復檢測方法、輸出端口數據刷新方法、軟件攔截技術(指令冗余、軟件陷阱)、“看門狗”技術、發生故障時的自恢復等。以下是幾種常用的方法:

         ?。?)主動初始化
         
          首先要保證上電或復位后軟件能夠正確地對單片機及其外圍器件的各種功能、端口或方式、狀態等實現初始化設置,其次在程序每次使用某功能單元前,都要盡可能地對相應的控制寄存器進行必要的設置。事實證明,這一措施能夠大大提高系統對入侵干擾的自恢復性能。

         ?。?)指令冗余化
          
          程序指令在執行當中或鎖存后,都有被噪聲修改的可能,這會導致控制失效甚至引發事故,因此對重要指令應多次反復執行,這樣就能糾正干擾造成的錯誤。對于頻率不高的采集數據,應在一定時間內多次采集后進行濾波處理;對于向外輸出的控制指令,應多次重復執行以確保輸出控制信號的可靠性。通常,可以把重要指令設計成定時執行的模塊,這樣在整個程序的循環運行過程中可以反復得到執行,即便干擾信號改變了指令內容,也能及時自動恢復正常,盡量減少因故障造成的損失。

         ?。?)數據冗余化
          
          在干擾較大的環境中,將數據冗余備份,可以大大增加系統的糾錯能力。對于重要數據應采用多備份,并增加專用于數據檢查和恢復的代碼。從可靠性角度出發,應盡量采用片內SRAM保存重要數據,當片內SRAM容量不夠時,也可以考慮擴展外部非易失性SRAM作為數據存儲器,這種芯片抗干擾性能很好,但價格較高。

         ?。?)軟件“看門狗”技術
          
          又稱程序監視技術,就是不斷監視程序循環運行時間,若發現超過已知的循環設定時間,就強迫程序返回到入口處,使系統運行重新納入正軌。其基本思路是:在主程序中對T0中斷服務程序進行監視;在T1中斷服務程序中對主程序進行監視;T0中斷監視T1中斷。從概率觀點,這種相互依存、相互制約的抗干擾措施將使系統運行的可靠性大大提高。




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 元朗区| 厦门市| 应城市| 红原县| 长治市| 梧州市| 聊城市| 泌阳县| 麻江县| 微博| 定陶县| 雷州市| 图们市| 诸暨市| 松阳县| 唐山市| 新巴尔虎左旗| 宁明县| 信阳市| 兴文县| 安化县| 岱山县| 同心县| 万宁市| 曲沃县| 梨树县| 泸水县| 阜南县| 黔东| 九江县| 和林格尔县| 衡山县| 盐津县| 嘉定区| 正镶白旗| 济阳县| 雅安市| 盐源县| 交口县| 乌拉特中旗| 岑巩县|