基于USB接口的数据采集系统

2022-10-10

1 总体设计

基于USB接口的数据采集系统由3部分组成:数据采集卡, 数据采集卡驱动程序和用户应用程序。数据采集卡包括系统硬件电路及固件程序, 它是本采集系统系统的基础。它用来完成信号的A/D转换, 并把转换好的信号传给USB接口。

数据采集卡驱动程序完成数据采集卡和应用程序之间的通信, 它提供了应用程序与采集卡之间的软件接口, 在装入后成为操作系统内核信任的部分, 供用户应用程序使用标准的WIN32API函数对硬件进行FO操作。用户应用程序是整个采集卡的最高层, 直接与用户进行交互。主要功能是与采集卡驱动程序接口来获得数据, 并把得到的数据进行处理、显示等操作, 同时把用户命令通过驱动程序传递给采集卡, 从而控制采集卡的参数设置。

2 系统硬件电路设计

本课题选取了PHILIPS公司的PDIUSBD12, M A X I M公司的M A X 1 1 6 6和A T M E L公司的89C52芯片作为整个采集系统的核心芯片。

2.1 系统硬件总体设计

本系统硬件电路包括:时钟电路、按键复位电路、电源电路、A/D转换电路、USB接口电路、串口电路。如图1所示。

2.2 A/D转换电路设计

模拟电源A V D D和数字电源D V D D应分别通过0.1uF的担电容与模拟地和数字地相连接。而数字地D G N D和模拟地A G N D 1、A G N D 2通常共地。

2.3 USB接口电路设计

采取总线形式传输, 硬件连接:PDIUSBD12 (简称D12) ALE与89C52 (简称52) 的ALE相连, D12数据口与P0口相连D12的CS、INT、WR、RD分别和52的P1.6、INT0、WR、RD脚相连;D12的D+、D一接18欧姆限流电阻, D 1 2的I N T、S U S P E N D、R E S E T、D M A C K、EOT接上拉电阻。

3 USB驱动程序

USB驱动程序入口程序DriverEntry () 的主要功能是告诉系统那些IRP由哪个例程处理也就是对驱动程序初始化, 它的作用相当于C/C++的main () 或Windows编程下的WinMain () 。

初始化派遣例程

在驱动程序初始化之后, PnP管理器调用AddDevice例程来初始化由该驱动程序所控制的设备。AddDevice例程的基本职责是创建一个设备对象并把它连接到以PDO (Physics Device Object) 为底层的设备堆栈中, 具体步骤如下。

(1) 创建设备对象, 并建立一个私有的设备扩展对象。 (2) 寄存一个或多个设备接口, 以便应用程序知道设备的存在。另外还可以给出设备名并创建符号连接名。 (3) 初始化设备扩展对象和设备对象的标志位。 (4) 把新设备对象添加到设备堆栈中。

4 结语

本文以基于USB接口的数据采集平台为研究对象, 选取了通用U S B接口芯片P D I U S B D 1 2, A/D转换芯片M A X 1 1 6 6和89C52单片机作为系统核心芯片, 设计并研制了一套基于USB接口的数据采集硬件板卡, 并开发了相应的VC++开发环境下的用户应用程序, 实现了从底层单片机到以WindowsXP操作系统为基础的PC机的USB双向通信, 最终构建了一个基于USB接口的数据采集平台。

本课题的难点在于对协议的理解和驱动程序的编写, 详细研究了USB通讯协议、操作系统原理及内核, 通过大量的实践与总结完成了PC机与USB之间的通讯。系统设计中对系统软件的测试没有什么非常有效的方法, 对其问题进行有效的定位, 只能通过示波器及BUSHOUND软件来进行一些初步判断。

摘要:数据采集系统广泛应用于信息检测、信号处理、自动控制系统等领域。为了提高数据采集的数据传输速率, 降低开发成本, 节约能源, 本文设计了基于USB总线的数据采集系统。本文概述的基于USB总线的数据采集系统是以AT89C52单片机为核心, 采用PDIUSBD12通用USB接口芯片作为通信接口, 通过A/D转换芯片MAX1166实现模拟量到数字量转换, 进行了系统硬件设计;并进行了相应的固件程序、驱动程序和应用程序开发, 给出了程序流程图和部分程序代码。该系统特点是连接方便, 支持即插即用, 数据传输速度远远高于普通的串口和并口。

关键词:数据采集,USB总线,PDIUSBD12,驱动

参考文献

[1] 陈心结.基于USB接口的多通道实时数据采集系统[J].计算机工程与应用, 2003, 15 (3) :46~58.

[2] 谭浩强.C语言程序设计[M].北京:清华大学出版社, 1999, 12.

[3] 晃建刚, 陈善广, 薛亮.基于USB接口技术的外设应用设计[J].嵌入式系统论文集, 2000, 7 (13) :102~116.

[4] 刘丁, 毛德柱, 王云飞.USB在数据采集系统中的应用[J].电子技术应用, 2003, 12 (8) :33~44..

[5] 张弘.USB接口设计[M].西安:西安电子科技大学出版社, 2002.

[6] 晃建刚, 魏安阳等.通用串行总线 (USB) 设备的驱动[J].电子技术应用, 2002, 22 (13) :77~86.

[7] 王朔, 李刚.USB接口器件PDIUSBD12的接口应用设计[J].单片机与嵌入式系统应用, 2002, 17 (6) :79~93.

[8] 郭四稳.WDM驱动程序的开发与实现[J].电脑与信息技术, 2006, 11 (7) :63~75.

[9] 张鑫.单片机原理及其应用[M].北京:电子工业出版社, 2005, 8.

上一篇:海归高管对企业创新投资的影响综述下一篇:大数据视角下我国医院财务管理创新