义USB数据传输的请求结构。
所有的 USB 设备是通过缺省控制通道对主机的请求发出响应,这些请求是由驱动程序控制传送而完成的,请求以及请求的参数通过包的形式发向设备,这里定义的usbRequest就是请求的数据包,
(3)填写数据传输的请求并发送数据传输请求。
USBSendReq(&usbRequest,&buffer[0],vender-long);∥函数将请求交给USB 驱动程序,由驱动程序完成向USB设备的发送,USB设备接到请求后根据固件中的程序将数据发送回后台PC机。
(4)进行数据的接收,本文采用的是块传输模式。
BULK_DATA usbBulkdata;∥定义块传输结构;
bulkControl.pipeNum=1;∥选择传输管道;
buffer=&receivedat[0];∥定义接收缓存区;
ULONG length=64;∥预接收的数据长度;
BulkdataSend(&usbBulkdata,buffer,length);
∥BulkdataSend为数据接收函数, 函数调用后传回的数据保存在buffer中。
经过上述步骤即可把数据从DSP保存到后台PC机内存中。
3 结语
本文使用USB控制器AN2131Q芯片实现了对高速信号的数据传输, 安装简单, 支持即插即用; 无需外接电源;并将其应用到基于TMS320C5409的水声信号采集及混沌特性研究系统通信中,充分验证了此接口电路的可行性和具体设计的正确性。
本文作者创新点: 通用串行总线USB是近年来一种新兴的计算机外围设备串行通信接口,它具有传输可靠、易于扩展、低价并可热插拨等特性。本文将EZ-USB 序列芯片AN2131Q用于水声信号采集及混沌特性研究系统中,实现DSP与PC机间的通信,并在AN2131Q与DSP间加入两片IDT72V02,使得数据的传输不会出现堵塞情况,提高了传输的速度。