USB 接口数据设计管理论文 摘要:以自行开发的基于 USB 接口的数据采集系统为例,介绍了 USB 接口的硬件和软件开发过程
关键词:USB 数据采集 PDIUSBD12 1USB协议和芯片选择 理解好USB协议是USB系统开发的第一步
USB协议版本包括1
0,USBOTG是对2
0版本协议的补充
虽然USB协议内容繁多且复杂,然而,对USB开发影响较大的却只是少数部分,以下对协议版本1
1[1]中这些部分进行介绍
1USB协议 一般,每个USB设备由一个或多个配置(Configuration)控制其行为
使用多配置原因是对操作系统的支持;一个配置由接口(Interface)组成;接口则是由管道(Pipe)组成;管道与USB设备的端点(Endpoint)对应,一个端点可以配置为输入输出两个管道
在固件编程中,USB设备、配置、接口和管道都用描述符报告其属性
图1为USB多层次通信模型
端点0默认配置为控制管道,用来完成所规定的设备请求(USB协议第九章)
其它端点可配置为数据管道
对开发而言,主要的大数据传输都是通过数据管道完成的[2]
USB传输类型包括批量传输、等时传输、中断传输和控制传输,每种传输类型的传输速度、可靠性以及应用范围都不同[3]
控制传输可靠性是最高的,但速度最慢;等时传输速度快,满足实时性,但可靠性低
在具体应用中,端点传输类型可根据传输速度和可靠性选择
在USB通信协议中,主机取得绝对主动权利,设备只能是“听命令行事”,通过一定的命令格式(设备请求)完成通信
USB设备请求包括标准请求、厂商请求和设备类请求
设备的枚举是标准请求命令完成的;厂商请求是用户定义的请求;设备类请求是特定的USB设备类发出的请求,例如海量储存类、打印机类和HID(人机接口)类
固件编程中设备请求必须遵循一定的格式,包括请求类型、设备请求、