USB描述符【整理】】的更多相关文章

USB描述符 USB描述符信息存储在USB设备中,在枚举过程中,USB主机会向USB设备发送GetDescriptor请求,USB设备在收到这个请求之后,会将USB描述符信息返回给USB主机,USB主机分析返回来的数据,判断出该设备是哪一种USB设备,建立相应的数据链接通道.那么USB描述符信息到底是一个什么样的数据呢,USB协议中有详细描述. 通用的USB描述符信息包括设备描述符.配置描述符.接口描述符和端点描述符,具体不同的USB设备还包括其它类型的描述符,例如,USB鼠标.键盘还包括HID…
在USB总线接口协议中,规定了一些标准的USB描述符,如表所示. 对于USB设备来说,有些USB描述符是必需的,例如: 设备描述符 配置描述符 字符串描述符 接口描述符 端点描述符 其余一些描述符并非必需,只在特定USB设备中使用,例如:设备限定描述符.其他速率配置描述符用于高速USB设备:OTG设备描述符用于USB OTG外设:超高速端点伴侣描述符用于超高速USB设备. USB描述符其实就是一个数据集合,用来表征USB设备某一方面的功能.USB协议中严格规定了每一种描述符的数据格式.各个USB…
标准的USB设备有5种USB描述符:设备描述符,配置描述符,字符串描述符,接口描述符,端点描述符. // Standard Device Descriptor typedef struct { u8 bLength; // 描述符的长度,固定值12H u8 bDescriptorType; // 描述符类型,设备描述符=01H u16 bcdUSB; // USB规范版本号(采用BCD码,0xAABC) // AA:主板本号 // B: 次版本号 // C: 子次版本号 u8 bDeviceCl…
枚举可以理解为主机按不定的顺序向USB设备讨要设备信息,好给它分配资源,若枚举不成功,就放弃分配资源,免得浪费资源.一般都是使用中断传输方式通信. 常用的描述符有以下几种:01H.设备描述符  02H.配置描述符  03H.字符串描述符  04H.接口描述符  05H.端点描述符 21H:HID描述符 22H:HID报告 一个设备只能有一个设备描述符,而一个设备描述符可以包含多个配置描述符(bNumConfigurations  ),一个配置描述符又可以包含多个接口描述符,一个接口使用了几个端点…
title: usb描述符简述 tags: linux date: 2018/12/18/ 18:25:23 toc: true --- usb描述符简述 转载自cnblog 具体描述符 https://blog.csdn.net/hushiganghu/article/details/54929066 在USB描述符中,从上到下分为四个层次: USB设备描述符(usb_device_descriptor) USB配置描述符(usb_config_descriptor). USB接口描述符(us…
USB设备是端口,接口,配置的集合,USB协议是以各种USB描述符来表征USB设备的功能.计算机通过这些描述符来获得USB设备的功能. USB描述符包括: USB标准设备描述符,USB集线器描述符.HID描述符,这里主要讲解USB描述符. USB标准设备描述符包括:设备描述符,端点描述符,接口描述符,配置描述符,设备限定描述符,其他描述符.这些所有的描述符都在 官方固件中的 dscr.a51 文件中,注意!!!!!   1.设备描述符 一共18个字节,14个字段.在官方给的固件程序中的描述如下图…
学习目标:分析USB摄像头驱动的描述符: 一.USB设备描述符 在usb设备驱动分析那一节,也用到了usb描述符. usb描述符可分为: USB设备描述符(usb_device_descriptor): USB配置描述符(usb_config_descriptor): USB接口描述符(usb_interface_descriptor): USB端点描述符(usb_endpoint_descriptor): 其中,一个USB设备描述符可以有多个配置描述符:配置描述符可以有多个接口描述符(比如声卡…
//============================================================================// 文件名: USBDESC.C// 用 途: USB描述符// 作 者: shenfei5// 时 间: 2007.2.3// 版 本: V1.10//============================================================================ #include <RTL.h>…
背景: USB理论知识光看着空想总觉着丢三落四,好像哪里没法理解到位,自己做个总结. 正文: 1. USB通信的最基本单位是“包”.如果把“包”肢解的话,可以分为各种“域”(7类,即一串二进制数.每类域均有具体的位数规定). 包有三种:令牌包,数据包,握手包 a)      令牌包:输入包,输出包,设置包,帧起始包.(通俗理解为,主机要求设备做什么) b)      数据包:Data0 / Data1. c)      握手包:ACK正确应答包,NAK无效包,STALL延时包. 2. USB是一…
前面struct usb_interface里表示接口设置的struct usb_host_interface被有意的飘过了,咱们在这节主要讲讲这个结构体,同样在include/linux/usb.h文件里定义. /* host-side wrapper for one interface setting's parsed descriptors */ struct usb_host_interface { struct usb_interface_descriptor desc; /* arr…