新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于LABVIEW的USB接口據(jù)采集系統(tǒng)的設(shè)計(jì)

基于LABVIEW的USB接口據(jù)采集系統(tǒng)的設(shè)計(jì)

作者: 時(shí)間:2011-08-11 來源:網(wǎng)絡(luò) 收藏

本設(shè)計(jì)將CY7C68001映射為DSP的外設(shè),占用DSP的外擴(kuò)區(qū)域XINTF0空間,地址分配如下:FIFO2,F(xiàn)IFO4,F(xiàn)IFO6,F(xiàn)IFO8和命令口的地址分別為000,001,010,011,100,采用并行異步讀寫方式完成二者之間數(shù)據(jù)和命令的交換。當(dāng)CY7C68001的地址線FIFOADR[2:0]為100時(shí),選中CY7C68001的命令口,通過CY7C68001的命令口,可以訪問其內(nèi)部37個(gè)寄存器、Endpoint0緩沖器(64個(gè)字節(jié)FIFO)和描述表(500個(gè)字節(jié)FIFO)等。CY7C68001中斷信號INT#和4個(gè)狀態(tài)信號READY、FLAGA、FLAGB、FLAGC分別與DSP的外部中斷1 (XINT1), GPIOA0,GPIOA1,GPIOA2,GPIOA3相連。在實(shí)際應(yīng)用中,由于通信速度達(dá)480Mb/s,所以要對電源進(jìn)行退耦處理, 另外CY7C68001最好使用24MHz有源晶振以增強(qiáng)系統(tǒng)的抗干擾能力,硬件電路圖如圖4所示。

系統(tǒng)總體框圖

  系統(tǒng)軟件設(shè)計(jì)

  傳統(tǒng)的開發(fā)USB應(yīng)用系統(tǒng)的步驟是:先用Windows DDK(設(shè)備驅(qū)動程序開發(fā)包)或第三方開發(fā)工具(如Driver Studio)開發(fā)USB驅(qū)動程序,然后用Visual C++編寫DLL(動態(tài)連接庫),最后再調(diào)用DLL來開發(fā)應(yīng)用程序。本文介紹一種簡單快速開發(fā)應(yīng)用系統(tǒng)的方法,它直接在環(huán)境下通過NI-VISA開發(fā)能驅(qū)動用戶USB系統(tǒng)的應(yīng)用程序,完全避開了以前開發(fā)USB驅(qū)動程序的復(fù)雜性,大大縮短了開發(fā)周期。

  及其對VISA的調(diào)用 

  VISA(Virtual Instrument Software Architecture)是一個(gè)用來與各種儀器總線進(jìn)行通訊的高級應(yīng)用編程接口(API),不受平臺、總線和環(huán)境的限制,可用來對USB、GPIB、串口、VXI、PXI和以太網(wǎng)系統(tǒng)進(jìn)行配置、編程和調(diào)試。當(dāng)進(jìn)行USB通信時(shí),VISA提供了兩類函數(shù)供調(diào)用:USB INSTR設(shè)備與USB RAW設(shè)備。USB INSTR設(shè)備是符合USBTMC協(xié)議的USB設(shè)備,可以通過使用USB INSTR類函數(shù)控制,通信時(shí)無需配置NI-VISA;而USB RAW設(shè)備是指除了明確符合USBTMC規(guī)格的儀器之外的任何USB設(shè)備,通信時(shí)要配置NI-VISA。

  (1)配置NI-VISA的步驟  

 ?、偈褂肈river Development wizard(驅(qū)動程序開發(fā)向?qū)?創(chuàng)建INF文檔;

 ?、诎惭bINF文檔,并安裝使用INF文檔的USB設(shè)備;

 ?、凼褂肗I-VISA Interactive Control(NI-VISA互動控制工具)對設(shè)備進(jìn)行測試,以證實(shí)USB設(shè)備已正確安裝,并獲得USB設(shè)備的各屬性值。

  (2)與Nl-VISA相配合的LABVIEW模板中VI子節(jié)點(diǎn)  

  ViOpen,打開并指定VISA resource name的設(shè)備的連接;

  ViProperty,VISA設(shè)備的屬性子節(jié)點(diǎn),可以設(shè)置端點(diǎn)或傳輸方式;

  ViWrite,向VISA resource name指定的設(shè)備寫入數(shù)據(jù);

  ViRead,從VISA resource name指定的設(shè)備讀出數(shù)據(jù);

  ViClose,結(jié)束設(shè)備讀寫并關(guān)閉與指定設(shè)備的連接。  

  (3)USB RAW設(shè)備讀寫的操作

  USB RAW設(shè)備的讀寫流程圖如圖5所示。

讀寫流程圖

  前面板部分

  LABVIEW是NI公司開發(fā)的一種基于圖形程序的編程語言,用戶利用創(chuàng)建和調(diào)用子程序的方法編寫程序,使創(chuàng)建的程序模塊化且編制簡單直觀。一個(gè)LABVIEW程序分為3部分;前面板、框圖程序和圖標(biāo)/接線端口。前面板提供與用戶交互的圖形化界面,通過面板上的各種按鈕、開關(guān)等控件可以實(shí)現(xiàn)對整個(gè)系統(tǒng)的操作或控制;實(shí)時(shí)波形顯示窗口能對產(chǎn)生的信號波形進(jìn)行預(yù)覽和監(jiān)視。還可以通過LABVIEW波形顯示器自帶的功能對波形進(jìn)行觀察和測量,對穩(wěn)定的周期信號可以直接準(zhǔn)確地讀出幅值和頻率,采集的正弦波波形如圖6所示

讀寫流程圖

  結(jié)束語

  隨著電子計(jì)算機(jī)的廣泛應(yīng)用,社會的數(shù)字化程度越來越高,數(shù)據(jù)采集也越來越重要,本系統(tǒng)是一種通用的高速數(shù)據(jù)采集系統(tǒng),可用于生物電波、電子學(xué)頻譜、聲波分析等瞬態(tài)信號的實(shí)時(shí)采集和觀察等場合。其中基于USB總線的高速數(shù)據(jù)采集系統(tǒng)具有可靠性高、數(shù)據(jù)不丟失、抗干擾性強(qiáng)、便于數(shù)據(jù)傳輸和處理等優(yōu)點(diǎn),因而具有良好的應(yīng)用前景和實(shí)用價(jià)值。


上一頁 1 2 下一頁

關(guān)鍵詞: LABVIEW USB接口

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉