在虛擬儀器中的基于USB 2.0高速數據采集卡
現場輸入信號是高頻的模擬信號,信號變化的范圍都比較大如果采用單一的增益放大那么放大以后的信號幅值有可能超過轉換的量程,所以必須根據信號的變化相應地調整放大器的增益。在自動化程度較高的系統(tǒng)中希望能夠在程序中用軟件控制放大器的增益,經過考慮本文選擇具有增益可編程功能的芯片—。該芯片具有頻帶寬、噪聲低、增益可編程且易于與單片機進行串行通信等優(yōu)點,十分適合在數據采集系統(tǒng)做前置放大。程控放大模塊的的控制字可在設定,再經過接口由傳給。
USB協(xié)議的芯片是關鍵。即7C68013)是世界上首批集成微控制器。其內部集成了的收發(fā)器、串行接口引擎、增強的微控制器和一個可編程的串行接口。
USB接口接到機之前,外設上的固件存儲在上;一旦外設連接到機上,先確認外設身份即讀設備描述符,然后將該外設的固件下載到芯片的中,這樣在開發(fā)過程中當固件需要修改時,可以在機上修改好后,下載到芯片中。
PC機發(fā)來的各種請求,以完成它們之間的數據傳輸。其主要功能包括控制放大模塊,實現通道選擇;控制模塊的數據采集;通過實時上傳采集數據給控制芯片接收并處理設備驅動程序的請求如設置接口狀態(tài)等多種協(xié)議標準請求等。
C語言進行開發(fā),這樣比較容易實現模塊化和分層結構化的程序設計。
Keil C函數庫。軟件開發(fā)包提供了該庫的目標文件,同時還提供了該函數庫的源代碼,用戶可以利用來重新編寫該函數庫。
EZ-USB FX2程序框架或直接使用固件庫開發(fā)的程序,這是開發(fā)外設的重要部分。在其固件程序中把自己定義為大存儲類、塊傳輸子類,操作系統(tǒng)中以上有相應的類設備驅動程序來支持這種類外設。在的固件程序中寫入通信模塊,就可以實現主機和設備的通信。
DSCR.A51(A51宏匯編器、目標文件轉換器和編譯器庫文件和啟動代碼。在固件程序框架中,定義了基本的設備的功能,一般不許修改。本設計要實現的具體功能則在應用層中的固件程序中完成。
ADC、放大模塊、采集模塊進行控制,同時還要接收或者發(fā)送數據。在采集開始前,可以先將命令發(fā)送出去,實現在固件程序中定義的相應功能,如通過口線控制前置放大模塊等。然后可以讀取傳送到主機的數據,或者向設備發(fā)送數據等。











評論