BOT 命令状态包CSW
2021-09-26
2560
0
CSW 应从包的边界开始,在传输了 13 个字节以后结束, CSW 的说明如下表:
struct CSW
{
DWORD dCSWSignature; // CSW的标识,固定值:53425355h (小端模式)
DWORD dCSWTag; //主机发送的一个命令块标识,设备需要原样作为dCSWTag(CSW中的一部分)再发送给Host;主要用于关联CSW到对应的CBW
DWORD dCSWDataResidue; //还需要传送的数据,此数据根据dCBWDataTransferLength-本次已经传送的数据得到
BYTE bCSWStatus; //指示命令的执行状态。如果命令正确执行,bCSWStatus 返回0
};
- dCSWSignature :帮助指明该数据包为 CSW 的信号标记,这个字段的值为 0x53425355 (小端),表示这是一个 CSW 。
- dCSWTag :设备应将这个字段设置为接收到的相应 CBW 的 dCBWTag 字段值。
- dCSTDataResidue :对于 DataOut ,设备应在这个字段报告 dCBWDataTransferLength 字段规定的要求数量与设备实际处理的数据量之差。对于 DataIn ,设备应在这个字段报告 dCBWDataTransferLength 字段规定的要求数量与设备实际发送的数据量之差。 dCSWResidue 的值不会超过 dCBWDataTransferLength 发送的值。
- bCSWStatus :表示命令执行是否成功。 0 = 执行成功,非 0 表示失败,如下表:
值 | 描述 |
---|---|
00h | 命令通过(运行良好) |
01h | 命令失败 |
02h | 状态错误 |
03 - 04h | 保留(废弃) |
05 - FFh | 保留 |
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936