以下使用NI-VISA与USB设备eZ430-RF2500进行通信,是在使用LabVIEW2010和NI-VISA503full的开发环境通过的。
1、USB与VISA背景
VISA是一个高级API用来与仪器控制总线进行通信。它是平台独立、总线独立、环境独立的。USB是一个基于消息的通信总线。这意味着PC和USB设备通过在总线上以文本或二进制数据格式发送指令和数据进行通信。每个USB设备都有自己的指令集。可以使用NI-VISA读函数与写函数,将这些指令发送到仪器上,并从这些仪器上读取响应。
从NI-VISA 3.0版本开始支持USB通信。能够支持两个等级的VISA资源:USB INSTR和USB RAW。
遵守USB测试与测量类别(USBTMC)协议的USB设备使用USB INSTR资源类别。USBTMC设备遵守VISA USB INSTR资源类别能够理解的协议。如果要与USBTMC设备进行通信,则没有必要进行设置。要与USBTMC设备进行通信、
USB RAW仪器是所有不能完全符合USBTMC规范的仪器。我们所使用的eZ430-RF2500开发套件就是属于这一类的,现在着重讲述配置NI-VISA以便控制eZ430-RF2500。
2、配置NI-VISA控制您的USB设备
在基于Win7的计算机上,将USB RAW设备配置为能够被NI-VISA所控制的设备所要进行的步骤如下。
首先,要将NI-VISA安装在计算机上,此时USB设备尚未连接到计算机。此外, USB设备驱动程序还没有安装。配置USB设备使用NI-VISA有三个步骤:1使用驱动程序开发向导创建INF文件;2使用INF文件安装INF文件和USB设备;3使用NI-VISA交互式控制测试设备。
本文讲述了使用eZ430-RF2500作为USB设备实例,操作系统为Win7系统,上传的INF文件只适合在Win7下使用。
2.1. 使用驱动程序开发向导创建INF文件
要使用NI-VISA,您必须首先让Windows使用NI-VISA作为这个设备的默认驱动程序。在Windows环境中,您可以使用INF文件完成这点。NI-VISA 3.0或更高版本包含了VISA驱动程序开发向导(DDW),可以为您的USB设备创建INF文件。
1、打开DDW,选择开始》程序》National Instruments》VISA》VISA驱动程序开发员向导。图1显示了打开的屏幕。
图1:VISA DDW硬件总线窗口
选择USB并点击下一步。VISA DDW基本设备信息窗口打开,如图2所示。
图2:VISA DDW基本设备信息窗口
2、使用的VISA比较新的可以在这个步骤中直接自动得到eZ430-RF2500中USB仪器所使用的USB厂商ID(VID)和产品ID(PID)。这些数字在您安装的时候能够识别USB设备,在您希望进行通信的时候,可以对设备进行寻址。根据USB规范,所有数字必须是16位的十六进制数字。点击下一步。输出文件属性窗口如图3所示。
图3:VISA DDW输出文件属性窗口
3、USB仪器前缀只是用来识别这个设备所使用文件的描述符。输入USB仪器前缀,选择需要存放文件的目标文件夹,点击下一步。下一个窗口将提供您安装选项。默认的选择是为操作系统安装设置信息,也通常是最佳选项。在您选择了一个选项之后,点击完成退出向导。INF文件已经在您在前一个窗口中输入的输出文件位置中指定的文件夹中生成了。
2.2. 安装INF文件和USB设备
INF文件的安装对于每个版本的Windows而言都是不同的。在DDW创建了INF文件之后,安装指令就已经包括在INF文件的头部了。由于INF文件是ASCII文本文件,它们可以在记事本等任何文本编辑器中查看。要获得关于安装INF文件的具体信息,可以在文本编辑器中打开INF文件,按照文件头部的指令完成。本文使用的是Win7操作系统,在最后DDW的最后一步可以为你安装。
2.3. 使用VISA交互式控制测试通信
1、打开测量与自动化浏览器(MAX)。选择工具》刷新更新视图。您的USB设备应该已经作为USB设备列在如图4所示的设备与接口中。您的USB设备现在已经完成安装,并配置为用于NI-VISA使用。
如果您选择了USB设备,设备信息将被显示在USB设置窗口中。使用这个窗口,您可以访问例如制造商ID、型号代码和设备序列号的信息。
图4:在MAX中显示的USB设备
2、要使用VISA与您的设备通信,使用您设备的VISA仪器描述符。USB INSTR设备的仪器描述符格式是USB[board]::制造商ID::型号代码::序列号[::USB接口编号]::INSTR。USB RAW设备的仪器描述符格式是USB[board]::制造商ID::型号代码::序列号[::USB接口编号]::RAW。
要测试与这个设备的通信,打开MAX。选择工具》NI-VISA》VISA交互式控制。如图5所示的窗口将被打开。
图5:VISA交互式控制
做了那么多准备后,就可以使用LabVIEW读取eZ430-RF2500中eZ430-RF2500 Wireless Sensor Monitor (IAR Source) v1.02例程中的数据了,结果如图6所示。
图6:LabVIEW USB RAW-块数据
[
本帖最后由 larrybirdkobe 于 2011-3-24 15:53 编辑 ]