基于基于USB接口的数据采集系统的设计与实现接口的数据采集系统的设计与实现
通用串行总线(USB)支持热插拨,真正的即插即用。USB1.1在全速传输时可以达到12Mbps的传输速率;低
速传输时传输速率可达1.5Mbps。USB电缆线只有4根,两根是电源线,传送5V电源,可用来向设备供电;另外
两根是信号线,用来传输
通用串行总线(USB)支持热插拨,真正的即插即用。USB1.1在全速传输时可以达到12Mbps的传输速率;低速传输时传输
速率可达1.5Mbps。USB电缆线只有4根,两根是电源线,传送5V电源,可用来向设备供电;另外两根是信号线,用来传输串
行数据。与传统的RS-232串口比较,USB具有传输速度更快、集成化程度更高、编程化更好以及能够支持多个设备等优
点。因此在我们的设计中用它来和主机接口实现高速的数据通信。
在
USB接口的数据采集系统的设计与实现" height="203"
src="http://files.chinaaet.com/images/20111217/848e3c07-0a10-4b4a-9d2a-c8f712f65591.jpg" title="基于USB接口的数据采
集系统的设计与实现" />
图中FPGA采用ALTERA公司生产的APEX 1k系列芯片,型号为EP1K30,通过在EPGA中编写硬件逻辑控制A/D转换器的运
行;实现A/D转换器和USB 控制芯片间数据传输的数据总线接口。除此之外,为了保证EPGA和USB控制芯片间数据交互过程
的实现,必须在FPGA中提供一个用于传输通信双方控制和状态信息的GPIO接口。
2 A/D转换环节
在该系统中我们采用TI公司的ADS7800。它是12位并行模数转换器
[2]
,接口简单,很容易控制,最大采样率可达333kHz,输
入的电压范围为-10V~+10V或-5V~+5V。ADS7800芯片的数字接口比较简单,可以很方便地与其它数字系统相连接。
对此芯片地控制有完全控制模式(full control mode )和孤立控制磨蚀(stand-alone control mode )两种控制方法。
在本系统中,对ADS7800芯片的控制是通过在FPGA芯片中编写控制逻辑来实现的。我们采用了孤立控制模式,在此控制模式
下,输出数字信号是12位并行的。
利用FPGA芯片的可编程性可以使用芯片中的12个IO脚作为数据总线,另使用一些IO脚作为ADS7800的控制信号输入,控制
模/数变换器以32kHz的速率对模拟输入信号进行采样,采样的数据存入FPGA的RAM中。本系统中所使用的FPGA芯片型号为
EP1K30QC208-3,它具有着良好的特性,芯片内部共有3万个逻辑门,容量相当大;6个嵌入式阵列块,可是现最大为3k字节
的RAM存储器。
3 系统的设计与实现
USB接口芯片介绍
在设计中,我们选取Cyprees公司的EZ-USB系列芯片来实现USB接口设备方的控制。它是一款带有多个外设、高度集成的芯
片,其功能框图如图2所示。一个集成的USB收发器(transceiver)连接USB总线的D+和D-。串行接口引擎(SIE)对总线
上的数据进行编/解码、错误检测、位填充以及USB规范规定的其它信号级操作的实现,并且最终把数据收或发到USB接口部
分。
图2 EZ-USB系统框图
内部的微处理器是8051单片机的增强型,提高了执行速度并增加了一些新的特性。它使用内部RAM作为程序和数据存储器;
带有16位地址线和8位数据线用来访问外部存储器,特有的快速传输模式可以在外部逻辑和内部USB FIFO间快速地传递数
据。
3.2 USB总线数据通信解决方案
在实现数据通信解决方案时,为完成数据流地正常传输,所建立的硬件平台必须能够提供两个接口。首先必须要有一个实现数