新闻中心

EEPW首页 > 测试测量 > 设计应用 > 基于LABVIEW平台的USB接口多路高速数据采集系统的设计

基于LABVIEW平台的USB接口多路高速数据采集系统的设计

作者:时间:2012-08-20来源:网络收藏

  本设计将CY7C68001映射为DSP的外设,占用DSP的外扩区域XINTF0空间,地址分配如下:FIFO2,FIFO4,FIFO6,FIFO8和命令口的地址分别为000,001,010,011,100,采用并行异步读写方式完成二者之间数据和命令的交换。当CY7C68001的地址线FIFOADR[2:0]为100时,选中CY7C68001的命令口,通过CY7C68001的命令口,可以访问其内部37个寄存器、Endpoint0缓冲器(64个字节FIFO)和描述表(500个字节FIFO)等。CY7C68001中断信号INT#和4个状态信号READY、FLAGA、FLAGB、FLAGC分别与DSP的外部中断1 (XINT1), GPIOA0,GPIOA1,GPIOA2,GPIOA3相连。在实际应用中,由于通信速度达480Mb/s,所以要对电源进行退耦处理, 另外CY7C68001最好使用24MHz有源晶振以增强系统的抗干扰能力,硬件电路图如图4所示。

系统总体框图

  系统软件设计

  传统的开发USB应用系统的步骤是:先用Windows DDK(设备驱动程序开发包)或第三方开发工具(如Driver Studio)开发USB驱动程序,然后用Visual C++编写DLL(动态连接库),最后再调用DLL来开发应用程序。本文介绍一种简单快速开发应用系统的方法,它直接在环境下通过NI-VISA开发能驱动用户USB系统的应用程序,完全避开了以前开发USB驱动程序的复杂性,大大缩短了开发周期。

  及其对VISA的调用 

  VISA(Virtual Instrument Software Architecture)是一个用来与各种仪器总线进行通讯的高级应用编程接口(API),不受平台、总线和环境的限制,可用来对USB、GPIB、串口、VXI、PXI和以太网系统进行配置、编程和调试。当进行USB通信时,VISA提供了两类函数供调用:USB INSTR设备与USB RAW设备。USB INSTR设备是符合USBTMC协议的USB设备,可以通过使用USB INSTR类函数控制,通信时无需配置NI-VISA;而USB RAW设备是指除了明确符合USBTMC规格的仪器之外的任何USB设备,通信时要配置NI-VISA。

  (1)配置NI-VISA的步骤  

  ①使用Driver Development wizard(驱动程序开发向导)创建INF文档;

  ②安装INF文档,并安装使用INF文档的USB设备;

  ③使用NI-VISA Interactive Control(NI-VISA互动控制工具)对设备进行测试,以证实USB设备已正确安装,并获得USB设备的各属性值。

  (2)与Nl-VISA相配合的LABVIEW模板中VI子节点  

  ViOpen,打开并指定VISA resource name的设备的连接;

  ViProperty,VISA设备的属性子节点,可以设置端点或传输方式;

  ViWrite,向VISA resource name指定的设备写入数据;

  ViRead,从VISA resource name指定的设备读出数据;

  ViClose,结束设备读写并关闭与指定设备的连接。  

  (3)USB RAW设备读写的操作

  USB RAW设备的读写流程图如图5所示。

读写流程图

  前面板部分

  LABVIEW是NI公司开发的一种基于图形程序的编程语言,用户利用创建和调用子程序的方法编写程序,使创建的程序模块化且编制简单直观。一个LABVIEW程序分为3部分;前面板、框图程序和图标/接线端口。前面板提供与用户交互的图形化界面,通过面板上的各种按钮、开关等控件可以实现对整个系统的操作或控制;实时波形显示窗口能对产生的信号波形进行预览和监视。还可以通过LABVIEW波形显示器自带的功能对波形进行观察和测量,对稳定的周期信号可以直接准确地读出幅值和频率,采集的正弦波波形如图6所示

读写流程图

  结束语

  随着电子计算机的广泛应用,社会的数字化程度越来越高,数据采集也越来越重要,本系统是一种通用的,可用于生物电波、电子学频谱、声波分析等瞬态信号的实时采集和观察等场合。其中基于USB总线的具有可靠性高、数据不丢失、抗干扰性强、便于数据传输和处理等优点,因而具有良好的应用前景和实用价值。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭