碧波液压网 欢迎你,游客。 登录 注册

基于USB2.0与FPGA技术的高速数据采集系统的设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  近年来笔记本电脑迅速普及和更新,其中大部分已经不配置RS232接口,而USB接口已成为今后一段时间PC机与外设接口的主流。本文采集系统的设计构建了一个基于USB接口的多功能通用数据采集、传输平台,将嵌入式系统的实时性、灵活性和PC机强大的数据存储、处理、显示功能结合起来。该采集系统在智能仪器仪表、测控系统、工控系统等领域有广阔的应用前景。

  1 系统总体结构设计

  1.1 系统总体结构

  系统总体结构框图如图1所示,系统包括:单片机与USB接口模块、FPGA模块、信号调理及A/D模块。其中,单片机外围电路相对简单,整个系统主要通过PC机的程序界面控制操作;USB接口负责与PC机通信;FPGA模块负责完成数据的采集与缓存。

  1.2 单片机与USB接口模块

  本设计的目的是构建以PC机为平台的数据采集系统,单片机的功能仅限于接收PC机的命令、控制FPGA工作。PC机作为整个系统的人机界面,控制整个数据采集系统进行采集、存储和处理。由此单片机可以选择低成本的8XC51系列。为了提高系统的灵活性,采用单片机与USB接口芯片分离的方案,选择Philip公司的ISP1581 USB2.0接口芯片。该芯片与8XC51系列单片机的接口非常简单,可以极大地降低系统成本。

  1.3 FPGA模块

  采用FPGA进行采样控制的最大特点是系统具有重构性和通用性。设计中采用了Altera公司的低成本FPGA的Cyclone系列(实际试验时,在更便宜的Acex1k器件上也可以实现),控制高速A/D芯片以20MSPS的速度采样。FPGA模块的设计具体包括FIFO、单片机接口、A/D控制接口、DMA控制模块和主控制器等子模块的设计。

  1.4 PC机端软件平台

  PC机采集程序使用VC++实现,直接调用Philips公司提供的驱动程序进行数据读写,大大降低了开发难度与风险。本设计中,PC机端软件设计包括应用程序的界面设计、多线程数据采集、存储与处理模块的设计,以及与USB底层驱动程序的通信动态链接库的设计。

  2 USB接口模块设计

  2.1 USB接口芯片

  USB接口芯片ISP1581具有体积小、高速、与单片机的接口相对简单等特点。除了控制端点外,ISP1581还有7个输入(IN)端点和7个输出(OUT)端点。每个端点可以灵活配置数据传输方式以及数据缓存区(FIFO)的大小,端点FIFO最大容量可以达到2KB。ISP1581芯片在配置枚举时需要单片机固件的支持,一旦正确完成了配置和驱动加载,单片机对于ISP1581芯片就如同普通存储器一样可以进行读写操作,以发送或接收数据。

  2.2 固件编程

  USB通信完全由PC主机发起。在这种结构下,固件总是一直在等待主机命令,再根据命令去执行相应的程序。固件的基本思想是采用模块化设计,分成 main.c等7个模块。ISP1581固件结构如图2所示。图中,main.c为主循环,isr.c主要负责中断处理,Chap9.c主要负责响应主机的请求。用户的应用程序将来也可以包括在main.c循环中。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论