微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 结合USB和微处理器的数据采集系统

结合USB和微处理器的数据采集系统

时间:08-31 来源:互联网 点击:

  1 引言

  现代工控自动化和科学研究对数据采集的要求日益提高, 在一些实时信号测量和图像处理等领域要进行高速精确数据采集,通用串行总线(USB 数据总线)已经在各种计算机中得到普及,并成为计算机的标准外设,它具有安装方便、通用、高速传输、支持热插拔即插即用可开发成本低等优点。在工控领域经常需要采集数据并将数据传输到计算机中进行处理,工业控制中应用广泛的是微处理器。USB 总线和微处理器结合,非常适合现场数据采集等,在工业控制中有广阔的应用前景。文中介绍一种USB采集系统,是二者有效结合使用的例子。

  2 数据采集系统开发概述

  USB 控制器主要有两种:一种是带USB 接口的单片机(MCU);另一种是专用的USB 接口芯片。本系统选择专用的USB 接口芯片,这就必须有一个位处理器进行协议处理和数据交换。专用USB 接口芯片的优点是价格便宜。接口方便和可靠性高,它尤其适合于产品的改型设计, 硬件上仅需对并行总线和中断进行改动, 软件则需要增加微处理器的USB 中断处理和数据交换程序以及PC机的USB 接口通信程序,无需对原有产品系统结构作很大的改动。

  一般USB 接口芯片都支持多种并行总线结构, 可方便地与多种单片机接口。硬件设计中要注意USB 接口芯片的时钟速度较高。如果芯片内部没有PLL 倍频,则单片机晶体振荡频率应该注意与之匹配,USB 设备的软件设计主要包括两部分:

  1)、USB 设备端的单片机软件,完成USB 协议处理与数据交换以及其他应用功能软件,完成USB 协议处理与数据交换以及其他应用功能程序;

  2)、PC 机端的程序由USB 通信程序和用户服务程序两部分组成。

  用户服务程序通过USB 通信程序与系统USBDI(USB device interface)通信,由系统完成USB 协议处理与数据传输。PC 端程序的开发难度较大,而文中介绍的系统不需要用户熟悉USB 协议以及Windows体系结构等就可以很快开发。下面从硬件和软件两方面介绍一个便携式USB 数据采集系统的开发。

  3 硬件设计

  对于USB 接口芯片,选择了USB100,它是目前开发较方便的USB 接口产品,不必为其编写驱动程序。USB100 模块的数据通信速度最高为8Mb/s,它是完全集成化的USB 通信接口模块,完全满足USB1.1 标准。内部多达384 字节的发送缓冲区和128 字节的接收缓冲区,满足高速通信与单片机接口的需要。单片机可选择带A/D、D/A 转换的类型,也可以选择普通单片机,然后再选择A/D、D/A 模块。

  第1 种选择高性能的单片机,例如ADμC812 作为系统处理器。ADμC812 在单个芯片内集成了8 路12 位ADC 采集系统、2 路12 位DAC、80C52MCU 内核、8kb 的闪速/ 电可擦除程序存储器、640 字节的闪速/ 电可擦除数据存储器、看门狗定时器、电源监视器。I2C 兼容的SPI 和标准的UART 串行I/O 模块及灵活的电源管理方案等等,真正实现了单片机应用系统的单片机。数据采集系统的组成如图1 所示。

图1 USB 数据采集系统

  第2 种选用一般单片机作为处理器,例如At90s8515。At90s8515 是基于AVR 增强型RISC 结构的高速低功耗8 位微处理器。

  它提供8k 可下载闪存、512 字节EEPROM、512 字节SRAM、32 条多功能I/O 线以及可编程UART、带有内部震荡器的可编程看门狗定时器。单片机选好之后,需要再选择A/D、D/A 模块来实现数据采集功能。数据采集系统组成如图2 所示。

图2 USB 数据采集系统板

  图2 中选择具有8 通道12 位AD7888 A/D 转换器和2 路12 位AD7274 D/A 转换器。 4 软件设计

  单片机编程用C 语言实现,主程序为main(),程序在初始化各种参数之后,开始不断的循环,查询USB100 和A/D 端口,将各路采样值送入USB 端口;同时检测是否有数据送入单片机,如果有数据,就进行相应的操作,否则继续循环。流程图如图3 所示。

图3 流程图

  PC 机应用程序编程如下:

  USB100 模块提供两种PC 机应用程序编程, 即虚拟串口方式和动态连结库方式。

  1) 虚拟串口方式下,用户在PC 机上安装USB100 模块专用虚拟串口驱动程序之后,USB100 即可作为PC 机上的一个标准设备,可以按照和操作串口完全一样的方法来编程。

  2) 在动态连结库方式下,用户要在PC 机上安装USB100 模块专用动态连结库,安装之后,USB100 即成为PC 机的一标准外设,编程时调用API 函数发送和接收数据。

  5 结语

  介绍的设计方法使数据采集系统的开发更加简单便捷,经过实践,系统最高传输速度达到8Mb/s,可以满足用户实际需要。此种方法具有一定的先进性和实用性,对于开发USB 采集系统有一定的参考价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top