<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于USB 2.0的高速數據采集卡在虛擬儀器中的應用

基于USB 2.0的高速數據采集卡在虛擬儀器中的應用

作者: 時(shí)間:2013-10-26 來(lái)源:網(wǎng)絡(luò ) 收藏

控制器

  數據采集接口卡是硬件部分的核心,選擇合適的能適用于協(xié)議的芯片是關(guān)鍵。EZ- FX2(即CY7C68013)是世界上首批USB集成微控制器。其內部集成了USB的收發(fā)器、串行接口引擎(SIE)、增強的8051微控制器和一個(gè)可編程的串行接口。

  在外設未通過(guò)USB接口接到PC機之前,外設上的固件存儲在PC上;一旦外設連接到PC機上,PC先確認外設身份(即讀設備描述符),然后將該外設的固件下載到芯片的RAM中,這樣在開(kāi)發(fā)過(guò)程中當固件需要修改時(shí),可以在PC機上修改好后,下載到芯片中。

固件開(kāi)發(fā)

  設備固件是設備運行的核心,它控制整個(gè)硬件系統的運行,并負責處理PC機發(fā)來(lái)的各種USB請求,以完成它們之間的數據傳輸。其主要功能包括控制放大模塊,實(shí)現通道選擇;控制A/D模塊的數據采集;通過(guò)FX2實(shí)時(shí)上傳采集數據給PC;控制FX2芯片接收并處理USB設備驅動(dòng)程序的請求(如設置USB接口狀態(tài)等多種USB協(xié)議標準請求)等。

  由于固件的開(kāi)發(fā)流程比較復雜,故本設計中采用C語(yǔ)言進(jìn)行開(kāi)發(fā),這樣比較容易實(shí)現模塊化和分層結構化的程序設計。

  EZ-USB FX2固件庫為用戶(hù)提供了底層Keil C函數庫。EZ-USB FX2軟件開(kāi)發(fā)包提供了該庫的目標文件,同時(shí)還提供了該函數庫的源代碼,用戶(hù)可以利用Keil C來(lái)重新編寫(xiě)該函數庫。

  EZ-USB FX2固件是使用EZ-USB FX2程序框架或直接使用EZ-USB FX2固件庫開(kāi)發(fā)的程序,這是開(kāi)發(fā)USB外設的重要部分。EZ-USB FX2在其固件程序中把自己定義為USB大存儲類(lèi)、塊傳輸子類(lèi),操作系統中(Win98以上)有相應的USB類(lèi)設備驅動(dòng)程序來(lái)支持這種USB類(lèi)外設。在FX2的固件程序中寫(xiě)入USB通信模塊,就可以實(shí)現主機和USB設備的通信。

  固件程序必須包括DSCR.A51(A51宏匯編器)、USBJmpTb.OBJ(目標文件轉換器)和Ezusb.lib(Ezusb C編譯器庫文件和啟動(dòng)代碼)。在固件程序框架中,定義了基本的USB設備的功能,一般不許修改。本設計要實(shí)現的具體功能則在應用層中的固件程序中完成。

應用程序開(kāi)發(fā)

  根據實(shí)際要求,本系統需要通過(guò)軟件下載固件程序,以及對ADC、放大模塊、采集模塊進(jìn)行控制,同時(shí)還要接收或者發(fā)送數據。在采集開(kāi)始前,可以先將命令發(fā)送出去,實(shí)現在固件程序中定義的相應功能,如通過(guò)EZ-USB FX2口線(xiàn)控制前置放大模塊等。然后可以讀取傳送到主機的數據,或者向設備發(fā)送數據等。

  Visual C++作為一種面向對象的集成開(kāi)發(fā)軟件,它最突出的特性就是封裝性、繼承性和多態(tài)性。所以,我們選用Visual C++來(lái)設計應用程序。

  最后將用Visual C++編寫(xiě)好的USB應用程序封裝成DLL,即可在用Labview編寫(xiě)的最上層應用程序中直接調用。

結語(yǔ)

  本文就基于USB的高速中的應用做了具體的闡述,將該系統應用于中可實(shí)現熱插拔,克服了傳統插拔麻煩且擴展槽有限的缺點(diǎn)。USB2.0傳輸率達到480Mbps,可充分滿(mǎn)足高速采集的需求。所以,本文給出的基于USB2.0的高速在虛擬儀器的研制開(kāi)發(fā)中有著(zhù)很強的實(shí)用性和廣闊的應用前景。

參考文獻:

[1].AD9059datasheethttp://www.dzsc.com/datasheet/AD9059_122633.html.
[2].CPLDdatasheethttp://www.dzsc.com/datasheet/CPLD_1136600.html.
[3].AD8321datasheethttp://www.dzsc.com/datasheet/AD8321_1055558.html.

紅外熱像儀相關(guān)文章:紅外熱像儀原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: USB 2.0 數據采集卡 虛擬儀器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>