(3)用户应用程序
用户应用程序是数据采集系统的核心,其主要功能为:开启或关闭USB 设备、检测USB 设备、设置USB 数据传输管道、设置A /D 状态和数据采集端口、实时从USB 接口采集数 据、显示并分析数据。整个应用程序采用Microsoft Visual C++编写,通过对界面的控制实现 A/D 的采样以及数据的显示。
下面列举一些与应用程序有关的函数:
BOOLEAN OpenDriver ( ) ;
BOOLEAN CloseDriver ( ) ;
PVO ID Sx2GetDeviceDesc ( ) ;
PVO ID Sx2GetStringDesc ( int stringIndex) ;
PVO ID Sx2GetConfigDesc ( ) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
BOOLEAN Sx2SendVendorReq ( PVO ID myRequest, char * buffer, int bufferSize, int *
recnBytes) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
3.2 DSP 软件程序设计
USB 主机与设备间的数据传输是通过设备中的端点(Endpoint)进行的。这些端点通过端 点号和输入输出方向来进行标识,并为数据传输分配固定的FIFO 存储区。本系统在初始化 时将CY7C68001 的4 个端点配置为批量传输类型。其中,FIFO2、FIFO4 为输出端点,用 于接收上位机传来的数据;FIFO6、FIFO8 为输入端点,用于存放待发送的数据。各个FIFO 设置为异步工作模式。DSP 经初始化后打开USB 外部中断,向CY7C68001 写入描述符表, 等待其枚举中断。枚举成功后,DSP 对CY7C68001 进行其他配置并清空FIFO,然后等待主 机发送用户请求并进行相应处理。软件程序流程图如图2 所示。
图 2 DSP 软件程序设计流程图
DSP 软件程序设计主要包括DSP 的初始化、USB 描述符表的写入和其他命令寄存器的 配置以及用户请求的相应处理。DSP 的初始化主要是初始化时钟速率、配置EMIF 口、配置 McBSP 口等。USB 描述符表主要是完成USB 芯片内部的初始配置,命令寄存器的配置是完 成USB 中断的开启、端点数据传输容量以及方向的配置等。用户请求是用户应用程序,根 据用户发送的请求完成相应的数据传输。
4. 结论
本系统采用 USB 接口完成了核信号采集系统与上位机间的数据传输,上位机的用户程 序显示所传数据以及波形图。经验证表明该方法连接简单,传输可靠。与普通串口相比,其 速度也得到了提升。
本文创新点:将传统的DSP 信号采集系统用于核信号的采集上,并且将与上位机进行通讯 的串行口方式改进为USB 方式,采用这种即插即用的接口不仅方便了与上位机的连接而且 提高了传输的速率。