CDC CAPI控制管理功能描述符
2025-07-10
0
0
CAPI Control Management Functional Descriptor(CAPI控制管理功能描述符)CAPI控制管理功能描述符用于标识设备支持的CAPI控制类型(智能或简单),主机据此决定可用的CAPI相关控制命令和功能。
该描述符用于描述CAPI控制模型(CAPI Control Model)在数据类接口(Data Class Interface,协议码为CAPI控制)上所支持的命令。它只能出现在通信类接口描述符的类特定部分。
描述符结构(Table 40)
偏移 | 字段名 | 大小 | 值/类型 | 描述 |
---|---|---|---|---|
0 | bFunctionLength | 1 | 数值 | 此功能描述符的字节数 |
1 | bDescriptorType | 1 | 常量 | CS_INTERFACE 描述符类型 |
2 | bDescriptorSubtype | 1 | 常量 | CAPI控制管理功能描述符子类型 |
3 | bmCapabilities | 1 | 位图 | 本配置支持的能力位图:<br> D7..D1: 保留,置零<br> D0: 1-设备为智能CAPI设备(Intelligent CAPI device);0-设备为简单CAPI设备(Simple CAPI device) |
示例(C结构体及二进制示例)
C结构体定义
typedef struct _USB_CDC_CAPI_CONTROL_MANAGEMENT_DESCRIPTOR {
uint8_t bFunctionLength; // 描述符长度
uint8_t bDescriptorType; // CS_INTERFACE (0x24)
uint8_t bDescriptorSubtype; // CAPI Control Management subtype (0x0E)
uint8_t bmCapabilities; // 能力位图
} USB_CDC_CAPI_CONTROL_MANAGEMENT_DESCRIPTOR;
示例数据(假设设备为智能CAPI设备)
字节序号 | 值(十六进制) | 含义 |
---|---|---|
0 | 0x04 | bFunctionLength = 4 |
1 | 0x24 | bDescriptorType = CS_INTERFACE |
2 | 0x0E | bDescriptorSubtype = CAPI Control Management |
3 | 0x01 | bmCapabilities = 0000 0001B (D0=1, 智能CAPI) |
二进制示例:
04 24 0E 01
说明
- bFunctionLength:通常为4(字节)
- bDescriptorType:固定为0x24(CS_INTERFACE)
- bDescriptorSubtype:CAPI控制管理功能描述符为0x0E
- bmCapabilities:能力位图,D0=1为智能CAPI,D0=0为简单CAPI