<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è) > 測試測量 > 設計應用 > 基于LABVIEW平臺的USB接口多路高速數據采集系統的

基于LABVIEW平臺的USB接口多路高速數據采集系統的

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

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

本文引用地址:http://dyxdggzs.com/article/193361.htm

系統總體框圖

  系統軟件設計

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

  及其對VISA的調用 

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

  (1)配置NI-VISA的步驟  

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

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

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

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

  ViOpen,打開(kāi)并指定VISA resource name的設備的連接;

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

  ViWrite,向VISA resource name指定的設備寫(xiě)入數據;

  ViRead,從VISA resource name指定的設備讀出數據;

  ViClose,結束設備讀寫(xiě)并關(guān)閉與指定設備的連接。  

  (3)USB RAW設備讀寫(xiě)的操作

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

讀寫(xiě)流程圖

  前面板部分

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

讀寫(xiě)流程圖

  結束語(yǔ)

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


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

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

評論


相關(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>