LabVIEW与USB的直接数据通信_第1页
LabVIEW与USB的直接数据通信_第2页
LabVIEW与USB的直接数据通信_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LabVIEWUSB的直接数据通信廖传书,黄道斌,孙旦均,李素芬(武汉理工大学信息工程学院湖北武汉430070)引言LabVIEW仪器控制、数字信号分析、工厂自动化等领域获得了广泛的应用。LabVIEW程LabVIEW对数据的采集和处理,传统的是采用数据采集卡,但是这些数据LabVIEWUSB总线,可以同样实现数据采集,并且弥补了采集卡的不足。LabVIEW读写USBVC++Delphi编写动态链DLLDLL中通过调用WINAPIUSB设备的数据,并存LabVIEW中通过对DLLLabVIEW下,通过调用NI-VISA子程序控件,实现与USB设备的直接通信,避免了二次编程的麻烦和数据的中转。USB底层驱动程序设计USB底层驱动开发工具有WindowsDDKDriverstudioWindriverLabVIEW的NI-VISA子程序控件作为USB的底层驱动。VISA(VirtualInstrumentSoftwareArchitecture,ni.corn/visa)是一个用来与各种仪器总线进行通讯的高级应用编程接口(API)。他不受平台、总线和环境的限制。通用串行总线(USB)PCUSB制数据的形式发送的。每个USB设备都有各自的指令集。可以使用NI-VISA读写功能向仪器发送这些指令,并读取仪器的反馈。NI-VISA30版开始支持USB2种VISA类函数(Resource2USBINSTR设备与USBRAWUSB测试和测量类(USBTMC)USBUSBINSTR类函数控制,488.2标准通讯。对于这些设备,只需以与GPIB仪器通讯同样的方式,使用"VISAOpen","VISAClose","VISARead"和"VISAWrite"功能。USBTMCVISAUSBINSTR类函数能够理解的协议。USBTMC设备相WindowsNI-VI-SA用。在WindowsINF文档做到这一点。INF文件是系统硬件设备配置文件,USBINFPID(产品识别号)VID(厂商识别号)USB设备。NI-VISA3.0中包含的VISADriverDevelopmentWizard(DDW)USBINFINF的过程:NI-VISAVISADriverDevel-opmentWizardPXI/PCIUSBINFUSBVI-SADDW基本设备信息窗口。USBPIDVIDUSB设1616进制数字,并应该由设备制造商提供。例如在后面介绍基于USB的虚拟示波器用到USB接口芯片PDIUSBD12的PID和VID0x04710x0666;这一步设置完成后,点击NEXT,进行最后一步的设置。USBInstrumentPrefix(USB仪器前缀)USBInstrumentPrefix"outputdirectory"FinishINF存至指定的位置。INF文件夹到系统盘Win-dowsINF点击右键,安装即可。这时,插上USB系统就能探测到,并根INFNI-VISA作为底层驱动程序。在Lab-VIEW中,只需NI-VISA的相关控件,即可实现对USB设备的读写操作。LabVIEW驱动程序编写LabVIEW区别于其他编程语言的主要特点。LabVIEW不仅提供数百种不同接口测试仪器的驱动程序,而且还支持VISA,SCPIIVI等最新的程控软件标准,为用户设计开发先进的测试系统提供了软VISA是用于仪器编程的标准I/OVISAVISAAPI(应用程序接口),通过调用底层的驱动程序来控制仪器设备。NI-VISA支持3种类型的USB管道:控制、批量和中断。NI-VISA探测到USB仪器时,他会对仪器进行自动扫描,寻找各种类型的最低可用端点。如使用NI-VI-SAVISAUSBControlIn和VISAUSBControlOutVISARead和VISAWrite来通过批量型管道传输数据。I/O函数库,VISAI/O设备I/OLabVIEWVISA节点均在Function模板→AllFunctions子模板→InstrumentI/O子模板→VISAVISAWrite和VISARead四个节点即可实现和USB设备的双向通信。当完成对USBINFVISAOpen节点打开该资源,建立计算机与这些VISA资源的通信管道;与VISAOpen节点相反,VISAClose节点用于将打VISAVISAWrite节点的功能是将writebuffer端口输入字符串数据发送到仪器中;VISARead节点的功能是从仪器中读出数据;44LabVIEWUSB批量数1所示。当然,这需要前述INFUSB1VISAresourcenameVISAINFVISAUSB发送字符串“connecttest”USB接口芯片LabVIEWreadbuffer“connecttest”字符串。IJSB的虚拟示波器的实现LabVIEWUSB示波器调理电路96k(多档可调)AD采样,并将采样到的数据通过USBPCLabVIEW,LabVlEWUSB口传来的数据进行处理、测2kHz的正弦波信号,在软件中显示的波形以及测量结果与实际Lab-VIEW的相关移测量等操作。PhilipPDIUSBD12USBADUSB接口完成采样数据的传输。单片机的电路设计和软件构成在这里就不做详细介绍。USBPDIUSBD12,他支持批量数据的长度为64B64B为一帧进行数据和命令的收发。在系统启动即检测USB总线上的数据的传输过程遵循以下步骤:LabVIEW向USB64B,其他部分进行比特填充。USB8k高速采样命令,则进行连续采样,将采样的数据存贮在数据缓冲区中,采60B60B数据的前面4USB总线将这些数据帧批量传输LabVIEW。8k60B60个USBL

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论