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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于FPGA和USB2.0的高速數(shù)據(jù)采集系統(tǒng)

          基于FPGA和USB2.0的高速數(shù)據(jù)采集系統(tǒng)

          作者: 時(shí)間:2009-10-12 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/188574.htm

          2 硬件設(shè)計(jì)
          系統(tǒng)的硬件由A/D轉(zhuǎn)換電路、數(shù)據(jù)采集與傳輸控制電路和接口電路構(gòu)成。
          2.1 A/D轉(zhuǎn)換電路
          A/D轉(zhuǎn)換電路是整個系統(tǒng)的重要組成部分。由低通濾波器、多路選擇開關(guān)和A/D轉(zhuǎn)換器構(gòu)成,如圖2所示。本文選用Maxim公司的A/D轉(zhuǎn)換芯片MAX1425。

          8路模擬輸入信號分別經(jīng)過由運(yùn)放THS4052構(gòu)成的抗混疊低通濾波器去除高頻成分,防止信號產(chǎn)生“混疊現(xiàn)象”。1/8模擬信號選擇器根據(jù)來自板的地址碼,控制模擬信號選擇器74HC4051選通8路輸入中的1路到輸出端,送到A/D轉(zhuǎn)換器MAX1425將模擬信號轉(zhuǎn)換為數(shù)字信號。MAX1425的控制信號由板提供,在控制信號的作用下以適當(dāng)?shù)臅r(shí)序完成轉(zhuǎn)換工作。
          2.2 數(shù)據(jù)采集與傳輸控制電路
          數(shù)據(jù)采集與傳輸控制電路的開發(fā)工作主要集中在上。FPGA負(fù)責(zé)CY7C68013與ADC芯片之間的緩沖與控制,一邊與ADC接口,另一邊與USB接口,產(chǎn)生數(shù)據(jù)采集、通道切換、A/D轉(zhuǎn)換、FIFO所需的全部控制信號;實(shí)現(xiàn)對傳輸數(shù)據(jù)的緩存、讀/寫控制、時(shí)鐘、輸出使能、端點(diǎn)的選擇,以及對ADC的控制等功能。
          如圖3所示,數(shù)據(jù)采集與傳輸控制電路由FIFO、USB接口控制狀態(tài)機(jī)、ADC接口控制狀態(tài)機(jī)、三態(tài)門緩沖器、控制寄存器組幾部分構(gòu)成。圖中,由右向左的寬箭頭表示數(shù)據(jù)流;FD[9:0]是與USB接口芯片連接的雙向數(shù)據(jù)總線;由左向右的寬箭頭表示傳送來自PC機(jī)的控制信號;單線箭頭表示輸入/輸出,以及FPGA內(nèi)部各個模塊間的控制信號線。

          從數(shù)據(jù)流向看,數(shù)據(jù)在ADC接口控制狀態(tài)機(jī)的協(xié)調(diào)下通過ADC接口送入FPGA的FIFO中。經(jīng)過FIFO的緩沖后,在USB接口控制狀態(tài)機(jī)的協(xié)調(diào)下,當(dāng)USB接口控制狀態(tài)機(jī)對三態(tài)門的輸出為高時(shí),三態(tài)門開啟,數(shù)據(jù)通過三態(tài)門傳輸?shù)紽PGA外部的USB接口;當(dāng)對三態(tài)門的輸出為低時(shí),三態(tài)門呈現(xiàn)高阻態(tài),F(xiàn)PGA的這幾個引腳作為輸入引腳。此狀態(tài)下,來自PC機(jī)的控制信號通過CY7C68013從FD[15:0]送人FPGA中。在USB接口控制狀態(tài)機(jī)的控制下,來自PC機(jī)的控制信息存人控制寄存器組,并由ADC接口控制狀態(tài)機(jī)來控制送往FPGA外的ADC接口,作為對ADC的控制(如通道的選擇)。



          評論


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