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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AVR和CPLD的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計

          基于AVR和CPLD的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計

          作者: 時間:2010-10-20 來源:網(wǎng)絡(luò) 收藏

            將程序下載至中運行調(diào)試,經(jīng)過對電路的調(diào)試和測量,控制8通道A/D同時轉(zhuǎn)換的狀態(tài)機產(chǎn)生的示波器時序波形如圖5所示,其中,0、1、2、3、4分別對應(yīng)的是圖3中的CONVST、EOC、EOLC、CS、RD,而第5通道是對FIF0的寫信號。從示波器顯示的波形圖可以看出產(chǎn)生的8個連續(xù)的脈沖對應(yīng)位置完全滿足圖3所要求的時序要求,也就是說在控制器同時控制8路信號的采集時不會出現(xiàn)時序混亂的情況。由此可知,采用本系統(tǒng)中設(shè)計的采集程序可以實現(xiàn)同時采集的要求,并且根據(jù)采集的脈沖寬度分析可知該系統(tǒng)能滿足采集速度為10 Mb/s的設(shè)計要求。

          控制8通道A

            2.2 控制Flash存儲程序設(shè)計

            4個Flash存儲器的流水線工作原理如圖2所示,對單獨的每一片F(xiàn)lash來說每一次存儲都是在上一次存儲過程中加載完成后進行,而對于由4片F(xiàn)lash存儲器組成的整個系統(tǒng),它一直在加載存儲數(shù)據(jù),這樣可以保證存儲速度大于采集速度,從而保證存儲過程中不會因單片F(xiàn)lash存儲速度慢而造成丟失數(shù)據(jù)。實現(xiàn)Flash存儲的主要程序:

          程序

            在數(shù)據(jù)加載期間本系統(tǒng)應(yīng)采用DMA傳輸控制方式,即:每當(dāng)FIF0的半滿標(biāo)志信號HF產(chǎn)生一次有效電平時,ATmegal62就啟動一次中斷,在中斷程序中,ATmegal62將產(chǎn)生NAND Flash命令和有效地址,以及啟動DMA控制器。一旦DMA控制器啟動,ATmegal62就將轉(zhuǎn)入后臺進行有效地址的運算等,從而參與數(shù)據(jù)傳輸過程,整個數(shù)據(jù)從FIFO到Flash存儲器的傳輸過程是由內(nèi)部編寫的DMA控制器控制完成。啟動一次DMA控制器傳輸一頁2048個字節(jié)的數(shù)據(jù),一次中斷完成16 K字節(jié)的傳輸。其示波器時序如圖6所示:第0,1,2,3通道是FIF0的讀數(shù)據(jù)時序波形,第4通道是Flash的寫通道時序波形。

          示波器時序

            3 結(jié)論

            通過使用編程,設(shè)計實現(xiàn)了一種成本低且可實現(xiàn)10 Mb/s以上并行采集數(shù)據(jù)率的存儲系統(tǒng)。在分析MAXl308特性及轉(zhuǎn)換時序的基礎(chǔ)上,設(shè)計完成了A/D轉(zhuǎn)換器及其外圍電路,并通過調(diào)試可知時序穩(wěn)定。通過VHDL語言實現(xiàn)了采集模塊、控制與存儲模塊和Flash存儲功能。在完成硬件連接后調(diào)試,試驗結(jié)果顯示,該設(shè)計能夠?qū)崿F(xiàn)低成本高速采集,多路同時采集速度大于10 Mb/s采集系統(tǒng),具有一定的實用價值。


          上一頁 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); })();