USB CDC
+ -

CDC 通讯类功能描述符示例-虚拟串口

2025-07-10 0 0

下表展示了一个简单的抽象控制模型(Abstract Control Model)设备的通信类功能描述符的典型例子。


偏移 字段名 大小 描述
0 bFunctionLength 1 05h 该功能描述符的字节数
1 bDescriptorType 1 24h CS_INTERFACE
2 bDescriptorSubtype 1 00h Header(头部功能描述符)
3 bcdCDC 2 0110h CDC规范版本号(BCD编码,1.10版)
5 bFunctionLength 1 04h 该功能描述符的字节数
6 bDescriptorType 1 24h CS_INTERFACE
7 bDescriptorSubtype 1 02h 抽象控制管理功能描述符
8 bmCapabilities 1 0Fh 支持所有抽象控制模型命令
9 bFunctionLength 1 05h 该功能描述符的字节数
10 bDescriptorType 1 24h CS_INTERFACE
11 bDescriptorSubtype 1 06h 联合功能描述符
12 bMasterInterface 1 00h 控制(通信类)接口号
13 bSlaveInterface0 1 01h 从属(数据类)接口号
14 bFunctionLength 1 05h 该功能描述符的字节数
15 bDescriptorType 1 24h CS_INTERFACE
16 bDescriptorSubtype 1 01h 呼叫管理功能描述符
17 bmCapabilities 1 03h 设备自身处理呼叫管理(D0=1),并支持数据接口复用命令(D1=1)
18 bDataInterface 1 01h 复用命令通过数据接口01h处理(与联合功能描述符一致)

结构化示例(十六进制表示)

05 24 00 10 01
04 24 02 0F
05 24 06 00 01
05 24 01 03 01

字段说明

  • Header Functional Descriptor(头部功能描述符):声明CDC规范版本。
  • Abstract Control Management Functional Descriptor:声明支持的抽象控制命令。
  • Union Functional Descriptor:声明主/从接口关系(如通信接口0,数据接口1)。
  • Call Management Functional Descriptor:声明呼叫管理能力及相关接口。

总结

  • 该示例展示了一个典型CDC ACM(虚拟串口)设备的功能描述符链。
  • 每个功能描述符都以bFunctionLengthbDescriptorTypebDescriptorSubtype开头,后跟各自的功能字段。
  • 这些描述符共同定义了设备的类特性、命令支持、接口关系和管理能力。

0 篇笔记 写笔记

CDC 通讯类功能描述符示例-虚拟串口
下表展示了一个简单的抽象控制模型(Abstract Control Model)设备的通信类功能描述符的典型例子。偏移字段名大小值描述0bFunctionLength105h该功能描述符的字节数1bDescriptorType124hCS_INTER......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • CDC
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

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

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