- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、基本概念
1、USB协议本身很复杂,但方便在提供了统一的接口方式,使得驱动程序在使用设备的时候,工作简化到了类似操作串行接口。
2、USB设备可以看作提供了多个串口的设备,依据USB的规范,我们将每个串口称作端点(Endpoint),要和这个端点通信,我们就要打开到这个端点的连接,这个连接就是管道(Pipe)。
3、打开端点之后,就可以像串口一样进行数据传输了。USB有4种不同类型的传输方式:控制传输(Control Transfer),批量传输(Bulk Transfer),中断传输(Interrupt Transfer)和实时传输(IsochTransfer)。
4、由于一个设备可能要适应多种情况,端点的设置会有多套,以备使用。端点设置称为接口(Interface)。USB设备展现给我们能够找到的东西就是这些Interface,我们选择要用的Interface,就可以找到Endpoint,再打开Endpoint,就可以传输数据了。所以,在驱动程序开始的时候,需要记录下这些Interface。
5、例如:OV511+的端点0是控制端点,用来设置参数以及起停设备;端点1是实时传输端点,用来传输视频。端点1有8套不同的设置,主要区别就在于一次传输的数据帧的大小,所以在USBDeviceAttach的时候,要记录这些设置到驱动程序中,后面才能够选用。
二、描述符介绍 标准的USB设备有5种USB描述符:设备描述符,配置描述符,字符串描述符,接口描述符,端点描述符。下面详解:
1、设备描述符:一个设备只有一个设备描述符
typedef struct _USB_DEVICE_DESCRIPTOR_{ BYTE bLength, BYTE bDescriptorType, WORD bcdUSB, BYTE bDeviceClass, BTYE bDeviceSubClass, BYTE bDeviceProtol, BYTE bMaxPacketSize0, WORD idVenderI, WORD idProduct, WORD bcdDevice, BYTE iManufacturer, BYTE iProduct, BYTE iSerialNumber, BYTE iNumConfiguations}USB_DEVICE_DESCRIPTOR;bLength : 描述符大小.固定为0x12.bDescriptorType : 设备描述符类型.固定为0x01.bcdUSB : USB 规范发布号.表示了本设备能适用于那种协议,如2.0=0200,1.1=0110等.
bDeviceClass : 类型代码(由USB指定)。当它的值是0时,表示所有接口在配置描述符里,并且所有接口是独立的。当它的值是1到FEH时,表示不同的接口关联的。当它的值是FFH时,它是厂商自己定义的.
bDeviceSubClass : 子类型代码(由USB分配).如果bDeviceClass值是0,一定要设置为0.其它情况就跟据USB-IF组织定义的编码.
bDeviceProtocol : 协议代码(由USB分配).如果使用USB-IF组织定义的协议,就需要设置这里的值,否则直接设置为0。如果厂商自己定义的可以设置为FFH.
bMaxPacketSize0 : 端点0最大分组大小(只有8,16,32,64有效).
idVendor : 供应商ID(由USB分配).
idProduct : 产品ID(由厂商分配).由供应商ID和产品ID,就可以让操作系统加载不同的驱动程序.
bcdDevice : 设备出产编码.由厂家自行设置.
iManufacturer : 厂商描述符字符串索引.索引到对应的字符串描述符. 为0则表示没有.
iProduct : :产品描述符字符串索引.同上.iSerialNumber : 设备序列号字符串索引.同上.
bNumConfigurations : 可能的配置数.指配置字符串的个数
2、配置描述符:配置描述符定义了设备的配置信息,一个设备可以有多个配置描述符
typedef struct _USB_CONFIGURATION_DESCRIPTOR_{ BYTE bLength, BYTE bDescriptorType, WORD wTota
您可能关注的文档
- ST硬盘AS、SV、NS的区别.docx
- suchas的各种不同用法.doc
- sunshineintherain歌词技巧归纳.doc
- surfacert详细评测.doc
- SUSEHAORALCE安装双机软件.doc
- SVCHOST应用程序错误.doc
- SYBASEspdboption使用.docx
- s决定人员流程作用发挥的4个要素.doc
- S版教材会写字结构分类.doc
- taeyang眼鼻嘴音译歌词.doc
- Unit 6 Get Close to Nauture Lesson 22 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 23 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025食品饮料行业AI转型白皮书-2025食品饮料行业数智化转型领先实践.pdf
- Unit 7 Be Together Lesson 24 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 25 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 26 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025年广州体育职业技术学院单招职业倾向性考试题库完美版.docx
- 软件公司员工考勤异常处理.doc
- 2025年土地登记代理人之土地登记相关法律知识题库500道及完整答案【有一套】.docx
- 2025年四平职业大学单招职业适应性考试题库含答案.docx
最近下载
- 激光打标机安全操作规程.docx VIP
- 九年级化学常用实验仪器教案新版.doc VIP
- Unit1 I love sports第4课时 Hit it big&Wrap up&Let's explore (课件)2025-2026学年外研版英语四年级上册.pptx VIP
- 华东师大版八年级数学上册 第12章 整式的乘除 单元检测试题(有答案).docx VIP
- GB50150-2016 电气装置安装工程 电气设备交接试验标准 (2).pdf VIP
- 家具构造与工艺 课件.ppt VIP
- 压力管道设计与审批人员考试题电子版真题部分2.docx VIP
- 2025年药品经营许可证换证自查报告模板(仅参考).docx
- 2023年8月5日河北省三支一扶面试真题及答案解析(上午).doc VIP
- 高性能特种聚异氰酸酯交联剂Takenate.PDF VIP
文档评论(0)