USB CDC
+ -

CDC 呼叫管理功能描述符

2025-07-10 0 13

呼叫管理功能描述符(Call Management Functional Descriptor)用于描述设备是否支持自身呼叫管理、是否可通过数据类接口收发呼叫管理信息,以及相关数据接口号。

呼叫管理功能描述符用于描述通信类接口的呼叫处理能力。它只能出现在接口描述符的类特定部分。

偏移 字段名 大小 值/类型 描述
0 bFunctionLength 1 数值 此功能描述符的字节数
1 bDescriptorType 1 常量 CS_INTERFACE 描述符类型
2 bDescriptorSubtype 1 常量 呼叫管理功能描述符子类型
3 bmCapabilities 1 位图 本配置支持的能力:
D7..D2: 保留,置零
D1: 0-仅通过通信类接口收发呼叫管理信息;1-可通过数据类接口收发呼叫管理信息
D0: 0-设备不自行处理呼叫管理;1-设备自行处理呼叫管理。
若D0为0,D1值被忽略,且为兼容性应置零。
4 bDataInterface 1 数值 可选用于呼叫管理的数据类接口的接口号(本配置中的零基索引)

C结构体定义

typedef struct _USB_CDC_CALL_MANAGEMENT_DESCRIPTOR {
    uint8_t bFunctionLength;      // 描述符长度
    uint8_t bDescriptorType;      // CS_INTERFACE (0x24)
    uint8_t bDescriptorSubtype;   // Call Management subtype (0x01)
    uint8_t bmCapabilities;       // 能力位图
    uint8_t bDataInterface;       // 数据类接口号(bInterfaceNum)
} USB_CDC_CALL_MANAGEMENT_DESCRIPTOR;

示例数据

假设设备自行处理呼叫管理,且可通过数据类接口收发呼叫管理信息,数据类接口号为1

字节序号 值(十六进制) 含义
0 0x05 bFunctionLength = 5
1 0x24 bDescriptorType = CS_INTERFACE
2 0x01 bDescriptorSubtype = Call Management
3 0x03 bmCapabilities = 0000 0011B (D1=1, D0=1)
4 0x01 bDataInterface = 1

二进制示例:

05 24 01 03 01

说明

  • bFunctionLength:通常为5(字节)
  • bDescriptorType:固定为0x24(CS_INTERFACE)
  • bDescriptorSubtype:呼叫管理功能描述符为0x01
  • bmCapabilities:能力位图,详见上表
  • bDataInterface:数据类接口号(bInterfaceNum,零基)

0 篇笔记 写笔记

CDC 呼叫管理功能描述符
呼叫管理功能描述符(Call Management Functional Descriptor)用于描述设备是否支持自身呼叫管理、是否可通过数据类接口收发呼叫管理信息,以及相关数据接口号。呼叫管理功能描述符用于描述通信类接口的呼叫处理能力。它只能出现在接口描述符的类特定部分。偏移字段名......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • CDC
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

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

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