CDC GetProfile
2025-07-11
0
0
1. 请求用途
GetProfile 用于返回由CAPI 2.0定义的配置文件信息。
主机通过此请求获取设备的配置文件信息,该配置文件描述了设备实现的功能和能力。
2. USB 控制传输格式
字段 | 值/说明 |
---|---|
bmRequestType | 0xA1 (10100001B) 方向:设备到主机,类型:类,接收者:接口 |
bRequest | 0x3A (GET_PROFILE) |
wValue | 0x0000 |
wIndex | 接口号 |
wLength | 64 |
Data | 根据CAPI 2.0第8章的配置文件信息(64字节) |
3. 典型主机端请求示例
C 结构体示例:
uint8_t profile_info[64]; // 配置文件信息
USB_SETUP_PACKET setup = {
.bmRequestType = 0xA1, // 设备到主机,类,接口
.bRequest = 0x3A, // GET_PROFILE
.wValue = 0x0000,
.wIndex = interface_number, // 通信接口号
.wLength = 64 // 64字节配置文件信息
};
// 发送setup包,读取profile_info数据
4. 设备端处理要点
- 返回64字节的配置文件信息,格式遵循CAPI 2.0第8章规范。
- 确保返回的数据准确反映设备的实际功能。
- 完成后通过状态阶段(Status Stage)ACK主机。
5. CAPI 2.0配置文件信息
配置文件信息包含设备的详细功能描述,如:
- 支持的协议类型
- 数据传输能力
- 控制功能
- 厂商特定功能
6. 参考
- USB CDC CAPI 子类规范 6.4.1](https://www.usb.org/document-library/class-definitions-communication-devices-12)
- CAPI 2.0 规范](https://www.capi.org/)