• 欢迎大家分享资料!前往留言板评论即可!

1、8910芯片USB描述符:设备描述符&配置描述符

合宙 模组资料网 2年前 (2021-05-15) 357次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

前言

  AirCat1系列模块是合宙出品的4G cat1 LTE模块,拥有丰富功能模块以及完善AT指令,用户可以通过AT指令实现所需的功能,也可以插上PC的USB当作网卡使用,也可以使用PPP拨号等等。这些功能都可以用模块的USB设备实现,下面就介绍下AirCat1系列模块强大的USB设备。

  AirCat1模块USB功能默认支持NDIS网卡和ECM网卡,但同时只能支持一个,用户可以根据自己的实际需要自行切换。ecm网卡一般是在linux上面会用到,windows默认不带ecm驱动。除了网卡外,还默认支持三个虚拟串口。如下图所示:

接口名 功能
NDIS RNDIS网卡接口(默认)
ECM ECM网卡接口
modem PPP拨号和发送AT指令
AT 发送AT指令
ap 调试抓log接口

  本系列文章将会按照USB的枚举顺序依次对模块的USB描述符进行简要分析。

一、设备描述符&配置描述符

1.1、设备描述符(18字节)

  设备描述符是USB设备的第一个描述符,每个USB设备都得具有设备描述符,且只能拥有一个。

字段 长度(位) 偏移量(位) 十六进制值 说明
bLength 8 0 0x12 描述符大小为18字节
bDescriptorType 8 8 0x01 设备描述符类型
bcdUSB 16 16 0x0200 USB规范版本2.00
bDeviceClass 8 32 0x00 驱动类型
bDeviceSubClass 8 40 0x00 驱动子类
bDeviceProtocol 8 48 0x00 无协议设备基础
bMaxPacketSize0 8 56 0x40 端点0的最大数据包大小为64
idVendor 16 64 0x1782 供应商ID为6018:展讯香港有限公司
idProduct 16 80 0x4E00 产品ID为19968
bcdDevice 16 96 0x0000 设备版本号为0.00
iManufacturer 8 112 0x01 制造商字符串描述符索引为1
iProduct 8 120 0x02 产品字符串描述符索引为2
iSerialNumber 8 128 0x00 设备没有描述序列号的字符串描述符
bNumConfigurations 8 136 0x01 设备有1种可能的配置

1、8910芯片USB描述符:设备描述符&配置描述符

1.2、配置描述符(9字节)

  配置描述符定义了设备的配置信息,一个设备可以有多个配置描述符。
  大部分的USB设备只有一个配置描这符,设备存在多个配置描述符时,系统会自动弹出对话框让用户选择。

  配置描述符在USB设备的枚举过程中,需要获取两次:
  第一次只获取配置描这符的基本长度9字节,获取后从wTotalLength字节中解析出配置描述符的总长度,然后再次获取全部的描述符。

  配置描述数据中不仅包括配置描述符本身,也包括其下的接口描述符和端点描述符。

| 字段 | 长度(位) | 偏移量(位) | 十六进制值 | 说明 |
| ———————– | ———- | ———— | ———- | ———————————————————— |
| bLength | 8 | 0 | 0x09 | 描述符大小为9字节 |
| bDescriptorType | 8 | 8 | 0x02 | 配置描述符类型 |
| wTotalLength | 16 | 16 | 0x0090 | 此配置的数据总长度为144。
这包括返回的所有描述符的组合长度警告:wTotalLength的值不等于实际长度 |
| bNumInterfaces | 8 | 32 | 0x05 | 此配置支持5个接口 |
| bConfigurationValue | 8 | 40 | 0x01 | 值1应用于选择此配置 |
| iConfiguration | 8 | 48 | 0x00 | 设备没有描述此配置的字符串描述符 |
| bmAttributes | 8 | 56 | 0xE0 | 配置特征:
位7:保留(设置为一个)1
位6:自供电1
位5:远程唤醒1 |
| bMaxPower | 8 | 64 | 0xC8 | 此配置中设备的最大功耗为400 mA |
在这里插入图片描述


喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址