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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于嵌入式處理器軟核Nios II的IP復(fù)用技術(shù)及應(yīng)用

          基于嵌入式處理器軟核Nios II的IP復(fù)用技術(shù)及應(yīng)用

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

          3 Nios II 在汽車行駛記錄儀中的應(yīng)用

          汽車行駛記錄儀是對車輛行駛速度、時間、里程以及有關(guān)車輛行駛的其它狀態(tài)信息進行記錄、存儲并可通過接口實現(xiàn)數(shù)據(jù)輸出的數(shù)字式電子記錄裝置。

          采用基于Nios II的SOPC技術(shù)來設(shè)計汽車行駛記錄儀的優(yōu)勢如下:

          汽車行駛記錄儀需要存儲、傳輸數(shù)據(jù),必要時還需具備顯示和警報功能,系統(tǒng)接口較多,SOPC Builder提供了大量的接口IP核供用戶選擇,使得設(shè)計方便快捷,能夠大大的縮短開發(fā)工期。

          汽車行駛記錄儀因其特殊的工作環(huán)境,要求盡可能的減小產(chǎn)品體積并提高系統(tǒng)的可靠性,SOPC的特點就是在FPGA上高度集成,盡量減少芯片外部連線,十分符合汽車行駛記錄儀對體積和可靠性的要求。

          汽車行駛記錄儀應(yīng)該具備適應(yīng)用戶需求變化的能力,具備良好的可擴展性和升級特性??删幊踢壿嬈骷﨔PGA以及Nios II的特點使得通過對軟件代碼的更新就可以完成系統(tǒng)的維護和升級。

          3.1 硬件平臺的搭建

          根據(jù)汽車行駛記錄儀的功能,將整個系統(tǒng)劃分為四個部分,如圖1所示。

          圖1 系統(tǒng)整體框圖

          圖1中各部分的功能如下:

          Nios II系統(tǒng)模塊:中央控制單元。包含Nios II處理器,Avalon總線,中斷時鐘以及與外設(shè)的接口。控制程序由運行在Nios II CPU上的軟件完成,負責(zé)對信號的采集,處理和存儲操作,并控制通信過程;

          信號輸入部分:接收外部傳感器和開關(guān)量信號,并進行處理,將處理后的數(shù)據(jù)送到Nios II系統(tǒng)模塊的數(shù)據(jù)采集端口(PIO);

          存儲器部分:存儲采集的數(shù)據(jù);

          通信模塊:采用RS-232,負責(zé)與分析儀之間的通信。

          根據(jù)各個部分的功能和開發(fā)板的配置(本項目所用的開發(fā)板為Stratix 1s10,F(xiàn)PGA的型號為:EP1S10F780C6),需要用到的外圍器件有:對模擬輸入信號進行模數(shù)轉(zhuǎn)換的ADC0809;用于試驗中存儲數(shù)據(jù)的 SRAM存儲器;用于試驗數(shù)據(jù)備份的Flash存儲器;裝載軟件程序、異常處理的SDRAM存儲器;記錄儀與分析儀之間的通信接口RS232;用于超速報警的LED;等等。



          評論


          相關(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); })();