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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM和FPGA的聲納波形產(chǎn)生系統(tǒng)設(shè)計

          基于ARM和FPGA的聲納波形產(chǎn)生系統(tǒng)設(shè)計

          作者: 時間:2011-06-28 來源:網(wǎng)絡(luò) 收藏

            模塊化的設(shè)計,為對其配置提供了極大的方便,可把視為外掛的一片SRAM,通過外部存儲器接口進(jìn)行控制。

          5、軟硬件設(shè)計需要注意的幾點

            在系統(tǒng)軟硬件設(shè)計中需要注意以下兩點:

          (1)當(dāng)LPC2292通過外部存儲器接口(EMC)控制時,地址線的接法如圖6所示,即需要把LPC2292的地址線A0空出來不用。這是由于FPGA實現(xiàn)的波形產(chǎn)生模塊的數(shù)據(jù)位寬為16位,當(dāng)LPC2292外部存儲器總線配置為16位時,A0地址需要空出來,當(dāng)總線配置為32位時,地址A0,A1都需要空出來,當(dāng)總線配置為8位時,地址從A0開始使用。

           ?。?)EP2C20F484C8N的焊接問題,此型號為FinleLine BGA封裝,在焊接的時候要注意芯片的錫球是否含鉛,含鉛與否決定采用何種工藝流程將器件安裝在PCB板上,無鉛封裝要求焊接溫度更高,工藝更復(fù)雜。Altera公司生產(chǎn)的所有無鉛元件以其產(chǎn)品序號最后的“N”標(biāo)出。因此本系統(tǒng)選用的芯片為無鉛芯片,需要按無鉛工藝焊接,若按有鉛工藝焊接,將造成芯片的虛焊。

          6、系統(tǒng)測試結(jié)果

            對系統(tǒng)軟硬件進(jìn)行的測試表明,系統(tǒng)達(dá)到了預(yù)期的設(shè)計指標(biāo),能輸出7路方波信號,頻率固定(CW波)或線性變化(LFM波),且各路信號可選擇關(guān)斷或選通。CW波的頻率在5~45kHz范圍內(nèi)任意可調(diào);LFM波在5kHz帶寬范圍內(nèi)任意可調(diào),中心頻率在5~45kHz范圍內(nèi)任意可調(diào);輸出脈沖信號寬度在0.5~100ms間任意可調(diào),相鄰各路信號的相位可超前和滯后,可選擇發(fā)射功率,且本系統(tǒng)已成功應(yīng)用于某工程項目中,工作正確可靠,得到了工程實際檢驗。圖7為Tektronix邏輯分析儀采集到的對應(yīng)輸出的CW波。

          7、結(jié)論

            該系統(tǒng)很好的利用了和FPGA兩者的長處,ARM集中實現(xiàn)主控設(shè)備與FPGA通信的橋梁作用,接收主控設(shè)備發(fā)出的聲納波形參數(shù),并根據(jù)這些參數(shù)配置FPGA內(nèi)部的寄存器;FPGA充分體現(xiàn)了它在系統(tǒng)成本、體積上的優(yōu)勢,設(shè)計靈活、方便,F(xiàn)PGA的使用為系統(tǒng)的升級帶來了很大方便。同時通訊接口的多樣性,極大改善了人機(jī)接口,提高了系統(tǒng)的靈活性。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: ARM FPGA 聲納波形產(chǎn)生

          評論


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