如何使用NI-VISA的USB RAW模式和設備溝通?



主要軟體:
主要軟體版本: 3.0
主要軟體修正版本: N/A
次要軟體: N/A

問題:

我發現在NI-VISA 3.0之後的版本已加入了針對於USB設備的支援,我要怎麼與USB設備溝通呢?



解答:

NI-VISA支援兩種USB的通訊模式:USBTMCRAW模式。本文介紹了關於VISA USB RAQ模式的訊息傳遞方式。若想要了解更多關於USBTMC模式,請參考本文末尾的網頁鏈結。

USB RAW模式允許程式訪問USB底層通訊協議來開發應用程式。因為NI-VISA直接應用USB傳輸協議機制,所以使用者在使用NI-VISA開發USB設備通訊程序之前必需要熟悉USB協議規範。NI-VISA在USB RAW模式下支援Interrupt, Bulk, Control三種資料的傳輸模式,但不支援Isochronous資料的傳輸模式。

此外,應用NI-VISA在USB RAW模式下開發USB設備的應用程式時,開發人員需要具備有相當程度USB低層傳輸協議的了解。換句話說與使用NI-VISA PXI的支援來撰寫 register-level 的程式很類似。NI-VISA提供了與設備溝通的頻道,但資料的含意是要由設計人員自行定義。

請依下列步驟來和USB設備溝通:

  1. 首先您需要讓Windows能夠正確辨識您的USB設備,並且指定NI-VISA做為該設備的驅動程式。而在Windows下您可以利用.inf的檔案來指定NI-VISA做為USB設備的驅動程式。每個USB設備都具有vendor及model的編號。.inf檔包含了被支援的USB設備的vendor及model編號以及對應的驅動程式。當有Plug and Play的設備連結到電腦上,Windows會自動搜尋所有的.inf檔案。當找到相對應的vendor及model編號的設定檔時,Windows會自動紀錄驅動程式與設備的從屬關係。

  2. 在和NI-VISA建立連結前,您需要為您的USB設備建立.inf檔來連結NI-VISA 驅動程式與設備。而在NI-VISA中所提供的VISA Driver Development Wizard可以自動產生所需要的.inf檔案,但您需要提供正確的vendor及model編號。請參考本文末尾的連結以獲得更多有關VISA Driver Development Wizard的資訊。

  3. 只要.inf檔在適當位置(在隱藏的SYSTEM_DIR\inf路徑),當您的USB設備連結到電腦上時,Windows會自動進入硬體偵測導引並且顯示NI-VISA為裝置的驅動程式。在安裝好驅動程式後,您可以在Measurement & Automation Explorer(MAX)下找到您的USB設備。

  4. 現在您可以利用viUsbControlIn和viUSbControlOut這兩個VISA的函式來控制USB設備,這兩個函式可以允許您控制USB設備的Control Pipe,且您可以利用VISA的屬性來建立USB設備的通訊。您可以參考文章末尾的相關聯結或者是 NI-VISA Help來獲得更深入的資訊。

NI-VISA會掃描每個連接的設備,當發現有Interrupt或Bulk等訊息通道建立時,訊息通道的屬性會指向最底層的一個可用的設備;如果該屬性包含了-1,則表示了該訊息通道上沒有任何的設備連接;因此,您所開發的USB相關應用程式都會在指定的設備上執行。



相關連結: External Link: USB Homepage
Product Manuals: NI-VISA Help
Drivers and Updates: NI-VISA
Developer Zone Tutorial: USB Instrument Control Tutorial
KnowledgeBase 321A2A2Y: What is USBTMC and How Can I Communicate with My USB Instrument?
KnowledgeBase 325B292Y: Why Do the NI-VISA USB Specific Attributes Not Appear in LabVIEW Property Nodes?
KnowledgeBase 1VCFFL3Y: What is the VISA Driver Development Wizard?
Developer Zone Tutorial: Using the VISA Driver Development Wizard and NI-VISA to Develop a PXI/PCI in Windows


附加檔案:





報告日期: 05/10/2006
最後更新: 03/03/2013
文件偏號: 325APJ2Y