基于USB的数据采集系统的设计与实现--总结
更新时间:2023-12-10 08:38:01 阅读量: 教育文库 文档下载
- 品牌车系数据采集推荐度:
- 相关推荐
基于USB的数据采集系统的设计与实现
USB总线拓扑结构
一个USB体系由USB主机、USB集线器和USB功能设备组成。在一个USB系统中只可能有一个USB主机,相对计算机主机系统而言,USB主机也被称为USB主机控制器。USB主机控制器是硬件、软件的综合体。USB主机控制器同时包含一个根集线器,根集线器是一个USB系统的最初连接点,用以提供向下的更多的连接点。 USB的通信协议
USB的协议层描述了USB主机与USB外设交互的语法和协议,从中定义了字段、包、事务和传送的结构。协议同时还规范了数据链路的建立、正常或异常传送处理的动态过程。 信息包
包(Packet)是USB系统中信息传输的基本单元,所有数据都是经过打包后在总线上传输的。USB包由五部分组成,即同步字段 (sYNC)、包标识符字段(PID)、数据字段、循环冗余校验字段(CRC)和包结尾字段(EOP)。 常用的几种包格式 1.起始(SOF)封包
起始封包属于令牌封包的一种,但具有独自的PID类型名:SOF。这个封包常用于等时传输,并不应用于低速设备。 2.令牌(Token)封包
令牌封包由于USB的数据交换是由PC主机端所激活的,所以在每一个数据交换中必须以SYNC、PID、ADDR、ENDP与CRCS这5个数据域组合而成的令牌封包为起始。 3.数据(Data)封包
数据封包含有4个域:SYNC、PID、DATA与 CRC16。DAI…A数据域的位值是根据USB设备的传输速度及传输类型而定,且须以8字节为基本单位。也就是,若传输的数据不足8字节,或传输到最后所剩余的也不足8字节,仍须传输8字节的数据域。
4.握手(Handshake)封包
握手封包仅包含SYNC和一个PID数据域。 事务处理
事务处理是USB总线上数据传输的基本单位,主机和USB设备间的一次通信可能需要使用多个事务处理。事务处理由三个阶段组成:令牌阶段、数据阶段和握手阶段,其中,数据阶段和握手阶段是可选的。根据所含令牌包的种类,USB中的事务处理可分为七种类型:IN事务、OUT事务、SETUP事务、PING事务、SOF事务、SPLIT事务和PRE事。 USB传输方式
当USB插入USB总线时,USB控制器会自动为该USB设备分配一个数字来标示这个设备。另外,在设备的每个端点都有一个数字来表明这个端点。USB设备驱动向USB控制器驱动请求的每次传输被称为一个事务(Transaction),事务有四种类型,分别是 BulkTransaetion、 ControlTransaetion、 InterruptTransaction
和 IsoehronousTransaetion。每次事务都会分解成若干个数据包在USB总线上传输。每次传输必须历经两个或三个部分,第一部分是USB控制器向USB设备发出命令,第二部分是USB控制器和USB设备之间传递读写请求,其方向主要看第一部分的命令是读还是写,第二部分有时候可以没有。第三部分是握手信号。 基于USB的数据采集系统的整体设计
基于USB总线数据采集系统包括两部分:系统的硬件设计和软件设计。硬件部分完成数据采集功能,并将采集的数据通过USB接口传送给PC机。软件部分包括采集设备固件程序、设备的驱动程序和用户应用程序。整体设计思路为:用户应用程序通过设备的驱动程序与采集设备固件程序进行通信,进行采样参数配置并控制采样的启动和停止,采集设备固件程序根据配置对刀D芯片进行参数配置,启动采样并且将刀D芯片采集到的数据传递给用户应用程序,界面应用程序对采集到的数据进行实时显示。
基于USB数据采集系统的关键性能指标
和其他的采集系统一样,对于基于USB的数据采集系统,也同样关心系统的一些性能指标,主要包括:
1.接口方式:USB数据采集系统采用USB总线接口,应该同时兼容 1.1和2.0,但 1.1以下需要对采样率进行限制。 2.输入通道:同时支持的通道数。
3.测量的信号:工业采集中的采集信号多种多样,有电压、电流、气压等。 4.输入频带:对测量信号的频带要求。
5.采样率:是数据采集系统的重要参数,直接表明系统的采集性能。 6.采样分辨率:采样数据的精度,也是数据采集系统的重要指标之一。 基于USB数据采集系统的硬件构成
基于USB的采集系统硬件主要由三部分构成:USB接口模块、A/D控制模
块和完成。A/D转换模块。而USB接口模块和A/D控制模块通常有一块控制器芯片和其他接口的数据采集系统相比,系统不需要电源模块,而采用USB供电方式。
基于USB数据采集系统的软件构成
基于USB的采集系统软件分为三个部分:采集设备固件程序、设备驱动程序和用户应用程序。
基于USB的数据采集系统硬件设计 USB接口芯片选择
随着 USB的应用日益广泛,各个开发商也相继推出了各自的符合USB相应协议的USB控制器芯片,尽管各种芯片都是严格遵循USB的相关协议,但不同的厂商推出的产品还是有着一定的性能和用途差异,目前市场上主要有三类:专门为USB设计的芯片、内嵌通用微控制器的USB控制芯片、需要外接微控制器的USB控制芯片。
基于USB的数据采集系统软件设计
基于USB的数据采集系统软件部分总共分为三块:采集设备固件程序、采集设备驱动程序和用户应用程序。 采集设备固件程序
采集设备固件程序是指运行在STM32F103C微控制器上的应用程序。其主要功能是驱动硬件,完成和PC机的数据交互,驱动采样芯片,完成采样过程和采样数据上传。
USB通信模块
USB通信模块用于完成和PC之间的USB数据通信[25〕,其具体功能描述和对 外接口定义如下:
(l)完成一个用户自定义USB类,使得操作系统能够发现这个设备,并与之建立连接,通过接口 voidUSBModuleInit(void)对外提供。
(2)通过控制端点0接收PC端发送的命令数据,并保存到全局缓冲区。
(3)通过同步传输端点l向PC机上传采集数据,在 voidUSBMoul走Sendnata(vo记)中将采样数据全局缓冲区中的数据装入USB发送缓冲区。 采集设备驱动程序
当Windows操作系统探测到有新的设备接入时,就会依据设备的配置描述符的调用相应的设备驱动程序。Windows本身提供了一些常见的标准USB外围设备的驱动程序,在进行USB设备开发的工作中,有两种选择,一种是将你的USB设备配置成一些标准的USB设备,例如HID类或者 MassStorage类,另外一种是开发自己的USB设备驱动,后一种选择灵活性更大[28],在本文系统中选用的就是开发自己的USB采集设备驱动。 用户应用程序
对于基于USB的数据采集系统,用户应用程序是必须的。一般用户应用程序必须的功能是采样控制、采样数据读取以及数据显示,其他功能(例如数据存储、数据分析)可以根据应用系统的需要进行定制[34]。本文将实现一个基本功能集的用户应用程序。C一在USB通信、图像处理和数据处理方面具有得天独厚的优势,所以选择了 VC++6.0作为应用程序的开发平台。
正在阅读:
新视野大学英语(第三版)第一册读写教程课后习题答案01-30
大雁气功后六十四式功法06-07
《数据结构》实验二 栈和队列01-07
形状与性格的关联逻辑04-27
0-周尔晋小儿推拿法04-05
2013年“中国旅游日”上海市主要旅游景区(点)门票半价优惠活动汇总表11-19
2018年人教版中考数学专题复习《函数基础知识》模拟演练含答案03-08
服装工艺基础教案05-18
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 数据采集
- 基于
- 实现
- 总结
- 设计
- 系统
- USB
- 成都长征考场科目三考试线路各处注意事项及学车心得 - 图文
- 大学生辅导员述职报告
- 控辍保学领导小组及分工
- 2014-2015泰兴市第一高级中学高三语文春阶段练习三
- 最新食品安全责任书模板
- 2019年超星尔雅管理学(2018秋)期末考试答案
- 物业经营管理练习题及答案
- 大学计算机基础习题及答案123
- 2019版内部审核检查表 - 图文
- 三升四暑期班
- Unit 12. Text I What Makes Mainstream Media Mainstream
- 优秀共青团员个人事迹材料
- 年产3000吨机制木炭生产线改造项目可行性研究报告 -
- 福建师范大学网络教育英语考试试题
- 水力学模拟试题及答案(二)
- 计算机组成原理试题解析3
- 2018年中考英语调研测试试题3(100分卷,无听力,含答案)
- 劳动经济学试题及答案
- 尔雅考古发现与探索答案
- 病理生理学 分析题