<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機系統(tǒng)應用中的抗干擾措施

          單片機系統(tǒng)應用中的抗干擾措施

          作者: 時間:2012-02-27 來源:網(wǎng)絡 收藏

          2.3重要數(shù)據(jù)保存器

          在工業(yè)控制裝置中,有一些重要的數(shù)據(jù),像從鍵盤輸入的控制目標值,P、I、D調(diào)節(jié)參數(shù)以及從上位機傳送來的各種指令等,必須妥善保存。由于失控的程序常常非法進行寫操作,使RAM區(qū)中重要的信息丟失。當微機重新啟動后,必須正確恢復重要參數(shù)。因此,設計中加入一片串行E2PROM芯片93C46。每次設置完成后,程序自動將重要參數(shù)寫入93C46。由于93C46具有上電禁寫和軟件禁寫功能,因而數(shù)據(jù)保存可靠。

          3軟件

          3.1使用空操作指令

          MCS-51指令系統(tǒng)中有部分雙字節(jié)和三字節(jié)指令,當程序彈飛落到這些指令的操作數(shù)上時,將把操作數(shù)當成指令,產(chǎn)生錯誤的結(jié)果。因而,在程序中重要的地方(如跳轉(zhuǎn)、調(diào)子程序)等插入兩條空操作指令,可攔截彈飛的程序并轉(zhuǎn)入正常。

          3.2建立軟件陷阱

          所謂“軟件陷阱”就是在程序中加入的一組用于攔截彈飛程序的程序段。它強行將程序轉(zhuǎn)向一個特定的地址,該地址放有出錯處理程序。如果將出錯處理程序的入口標號命名為“ERR”的話,通常軟件陷阱由以下三句話組成:

          4.jpg

          一旦彈飛的程序被攔截,立刻轉(zhuǎn)向錯誤處理程序。

          3.3出錯處理程序

          錯誤處理程序的共同點是先關閉中斷,防止事態(tài)擴大。對于有“看門狗”電路的系統(tǒng)來講,等待復位即可。而軟件復位和硬件“看門狗”復位不同。此時CPU片內(nèi)的寄存器和I/O口狀態(tài)是不定的。所以錯誤處理程序在轉(zhuǎn)向程序起點前,要將CPU片內(nèi)的各寄存器、已激活的中斷標志和I/O口“軟件”復位,進入初始狀態(tài),再轉(zhuǎn)入程序起點。

          3.4其他

          在用組成的控制系統(tǒng)中,調(diào)節(jié)量的輸出是不斷變化的。單片機系統(tǒng)受到干擾而異常復位后,RAM區(qū)中的標志單元、輸出量緩沖單元和I/O口的狀態(tài)都可能改變,不能作為系統(tǒng)復位后的狀態(tài)恢復數(shù)據(jù)。這時可以手動給定量作為當前控制器輸出量。這些可有效的減少單片機異常復位后對整個系統(tǒng)帶來的擾動。

          4結(jié)束語

          微機系統(tǒng)設計是一項綜合性設計,采用硬件措施可有效提高微機控制系統(tǒng)的能力,但過多的硬件本身就降低了系統(tǒng)的可靠性。因而系統(tǒng)的設計要“軟”“硬”兼施,提高系統(tǒng)的防護和容錯能力,從而提高單片機系統(tǒng)的可靠性。

          參考文獻
          [1]俞忠原,陳一民.工業(yè)過程控制計算機系統(tǒng)[M].北京:北京理工大學出版社,1995.
          [2]張友德.飛利浦80C51系列單片機原理與技術手冊[M].北京:北京航空航天大學出版社,1992.


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();