USB CDC
+ -

CDC 头部功能描述符

2025-07-10 0 0

头部功能描述符(Header Functional Descriptor)用于标识该接口及其相关描述符所遵循的CDC规范版本,是所有CDC类特定描述符的起始部分。

类特定描述符必须以一个头部开始,其格式如下表所示。bcdCDC 字段用于标识该接口及其描述符所遵循的《USB通信设备类规范》的版本号。

偏移 字段名 大小 值/类型 描述
0 bFunctionLength 1 数值 此描述符的字节数
1 bDescriptorType 1 常量 CS_INTERFACE 描述符类型
2 bDescriptorSubtype 1 常量 头部功能描述符子类型(见Table 25)
3 bcdCDC 2 数值 遵循的USB通信设备类规范版本号(BCD编码)

C结构体定义

typedef struct _USB_CDC_HEADER_FUNCTIONAL_DESCRIPTOR {
    uint8_t  bFunctionLength;      // 描述符长度
    uint8_t  bDescriptorType;      // CS_INTERFACE (0x24)
    uint8_t  bDescriptorSubtype;   // Header subtype (0x00)
    uint16_t bcdCDC;               // CDC规范版本号(如0x0110表示1.10版)
} USB_CDC_HEADER_FUNCTIONAL_DESCRIPTOR;

示例数据(假设CDC规范版本为1.10)

字节序号 值(十六进制) 含义
0 0x05 bFunctionLength = 5
1 0x24 bDescriptorType = CS_INTERFACE
2 0x00 bDescriptorSubtype = Header
3 0x10 bcdCDC低字节(0x0110)
4 0x01 bcdCDC高字节

二进制示例:

05 24 00 10 01

说明

  • bFunctionLength:通常为5(字节)
  • bDescriptorType:固定为0x24(CS_INTERFACE)
  • bDescriptorSubtype:头部功能描述符为0x00
  • bcdCDC:BCD编码的CDC规范版本号,如0x0110表示1.10版

0 篇笔记 写笔记

CDC 头部功能描述符
头部功能描述符(Header Functional Descriptor)用于标识该接口及其相关描述符所遵循的CDC规范版本,是所有CDC类特定描述符的起始部分。类特定描述符必须以一个头部开始,其格式如下表所示。bcdCDC 字段用于标识该接口及其描述符所遵循的《USB通信设备类规范》的版本号。......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • CDC
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    您的支持,是我们前进的动力!