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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ARM嵌入式汽車節(jié)能控制系統(tǒng)的設(shè)計

          ARM嵌入式汽車節(jié)能控制系統(tǒng)的設(shè)計

          作者: 時間:2012-11-22 來源:網(wǎng)絡(luò) 收藏

          圖5 RS-232C與處理器的通信接口電路  

          系統(tǒng)軟件設(shè)計

            在本系統(tǒng)中,主程序是整個程序的核心,擔負著系統(tǒng)的運行、控制的主要任務(wù),需要對其控制流程進行仔細考慮,以完成所需的控制要求。

            在程序開始時,首先對系統(tǒng)進行初步的初始化。之后,采集各種數(shù)據(jù)并判斷數(shù)據(jù)是否正常,如果正常,則顯示數(shù)據(jù)并等待中斷,根據(jù)中斷轉(zhuǎn)向相應(yīng)的中斷服務(wù)子程序。如果數(shù)據(jù)不正常,則通過報警來提示用戶檢查數(shù)據(jù),直到數(shù)據(jù)正常才執(zhí)行其他程序。如果一切正常,且沒有剎車和啟動等控制,則可以與其他設(shè)備進行通信等操作。具體的流程見圖6所示?! ?

          圖6 系統(tǒng)總程序流程圖

            系統(tǒng)的抗干擾設(shè)計

            要達到良好的系統(tǒng)控制效果需要在系統(tǒng)設(shè)計中非常注意它的抗干擾性和可靠性。本系統(tǒng)由于采用高速作為核心處理器,它的高頻信號不僅容易受到干擾,而且也會成為系統(tǒng)的干擾源,因此有必要對整個系統(tǒng),特別是部分的抗干擾及保護做更多的處理。

            硬件部分,控制系統(tǒng)的電源及功率驅(qū)動部分抗干擾措施主要就是從防和抗兩方面入手。其總原則是:抑制或消除干擾源;切斷干擾對系統(tǒng)的耦合通道;降低系統(tǒng)對干擾信號的敏感性。抗干擾設(shè)計的具體措施包括:隔離、接地、屏蔽、濾波等常用方法。

            軟件部分,本系統(tǒng)的軟件主要采用了以下幾種軟件抗干擾設(shè)計:

            軟件陷阱法

            測試系統(tǒng)在遇到外界干擾時,往往會導(dǎo)致運行程序進入程序存儲器的空白區(qū)(即無指令區(qū)),這種現(xiàn)象叫做程序"跑飛"。于是在各子程序之間、各功能模塊之間和所有空白處,都寫上連續(xù)3個空操作指令(nop),后接一無條件轉(zhuǎn)移指令,一旦程序跑飛到這些區(qū)域,就會自動返回執(zhí)行正常程序。

            程序的冗余設(shè)計

            在程序存儲器的空白區(qū)域,寫入一些重要的數(shù)據(jù)表和程序作為備份,以便系統(tǒng)程序被破壞時仍有備份參數(shù)和程序維持系統(tǒng)正常工作。由于TMS320LF2407A的數(shù)據(jù)存儲以數(shù)據(jù)頁為基準,如果對不同數(shù)據(jù)頁的數(shù)據(jù)進行操作而不指定相應(yīng)的數(shù)據(jù)頁,會導(dǎo)致程序跑飛。因此需要對程序未使用滿的數(shù)據(jù)頁進行填充,防止數(shù)據(jù)頁混亂導(dǎo)致的系統(tǒng)誤操作。

            加裝了能量回收再利用裝置后,當汽車在加速或重新起動初期,可以利用存儲的高壓氣體驅(qū)動汽車,不需要燃料,可以較少汽車尾氣對環(huán)境的污染。因此,該裝置不僅可以節(jié)約能源,而且有利于環(huán)保。


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();