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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于USB接口的實用型數(shù)據(jù)采集卡設(shè)計

          基于USB接口的實用型數(shù)據(jù)采集卡設(shè)計

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

          Windows系統(tǒng)對構(gòu)成一個總線主機的不同軟件部分進行了明確的劃分,如圖4所示,其中客戶軟件僅僅包含了用來控制不同的外設(shè)的設(shè)備驅(qū)動程序。USB客戶軟件會通過一個Windows所定義的一個軟件來同根集線器驅(qū)動程序進行通信。而USB根集線器驅(qū)動程序則要通過USBDI(通用串行總線驅(qū)動程序)來實現(xiàn)同USBD通用串行總線驅(qū)動程序)的通信。然后,USBD會選擇兩種主控制器驅(qū)動程序(UHCD和OpenHCI)之一來同其下方的主控制器進行通信。最后,在USB總線和主機控制器之間存在一個PCI總線枚舉器,它負責在檢測到系統(tǒng)中存在一個通用串行總線時,裝載適當?shù)腢SB總線系統(tǒng)軟件,主控制器驅(qū)動程序會通過PC工枚舉器軟件直接實現(xiàn)對USB物理層總線的訪問。HCD與USBD代表了基于對不同層次的抽象的軟件,它們能以某種方式共同工作,以滿足USB系統(tǒng)的整體要求。

          3.2 固件程序開發(fā)

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

          Cypress公司提供的EZ-USB FX2軟件包為用戶開發(fā)基于EZ-USB FX2系列芯片的USB設(shè)備的編程提供了很大的方便。無論是開發(fā)基于外設(shè)的8051固件程序,還是開發(fā)基于USB主機的設(shè)備驅(qū)動程序或應(yīng)用程序,該軟件包都提供了較完備的程序框架和例程庫。

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

          EZ-USB FX2固件是使用EZ-USB FX2程序框架或直接使用EZ-USB FX2固件庫開發(fā)的程序,這是開發(fā)USB外設(shè)的重要部分。

          FX2在其固件程序中把自己定義為USB大存儲類、塊傳輸子類,操作系統(tǒng)(Win98以上)有相應(yīng)的USB類設(shè)備驅(qū)動程序來支持這種USB類外設(shè),而不需要另外在操作系統(tǒng)內(nèi)安裝其驅(qū)動程序。在FX2的固件程序中寫入USB通信模塊,就可以實現(xiàn)主機和USB設(shè)備的通信。

          固件程序必須包括DSCR.A51(A51宏匯編器), USBJmpTb.OBJ(目標文件轉(zhuǎn)換器)和Ezusb.lib ( Ezusb C編譯器庫文件和啟動代碼)。

          固件程序有兩個C文件,一個是FW.C,即框架程序,定義了基本的USB設(shè)備的功能,一般不許修改。另一個是FUNCTION.C(FUNCTION為自己命名),本設(shè)計要實現(xiàn)的具體功能在此文件中完成。

          3.3 應(yīng)用層程序

          應(yīng)用層程序用Visual C++6.0來開發(fā),它可以直接調(diào)用底層的設(shè)備驅(qū)動程序。利用VC開發(fā)的應(yīng)用軟件具有高效、美觀、操作方便等優(yōu)點。


          圖5 軟件流程圖

          如圖5所示,本系統(tǒng)需要通過軟件下載固件程序,對ADC、放大模塊、采集模塊進行控制,同時還要接收或者發(fā)送數(shù)據(jù)。在采集開始前,可以先將命令發(fā)送出去,實現(xiàn)在固件程序中定義的相應(yīng)功能,如通過FX2口線控制前置放大模塊等。然后可以讀取傳送到主機的數(shù)據(jù),或者向設(shè)備發(fā)送數(shù)據(jù)等。

          本文作者創(chuàng)新點: 本文設(shè)計的USB2.0為接口的,采樣及數(shù)據(jù)傳輸速度都達到了24Mb/s,達到國內(nèi)先進水平。同時該系統(tǒng)具有簡單實用,硬件成本低,構(gòu)造簡單,復(fù)用性良好,功能強大的特點,也是該系統(tǒng)的優(yōu)勢之處。


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