USB --SETUP --STATUS阶段

每个 USB 控制传输包含三个阶段:

阶段 说明
1. SETUP 发送请求(如 SET_ADDRESS、SET_CONFIGURATION)
2. DATA 可选,发送或接收数据
3. STATUS 确认完成,通常是一个空包
  1. 主机 → 设备: SETUP (SET_ADDRESS, wValue=0x13) → 告诉设备:"你的新地址是 0x13"

  2. 主机 → 设备: OUT Token (Addr=0x13, Endp=0x00) → 这是 STATUS 阶段的开始

  3. 设备 → 主机: DATA1 (空数据,CRC=0x0000) → 表示"我已收到并处理了请求"

  4. 主机 → 设备: ACK (隐含,不显示) → 确认收到 STATUS 包

类型 是否有 DATA 阶段 STATUS 阶段
GET_DESCRIPTOR ✅ 有 DATA(读取) ✅ 有 STATUS(IN)
SET_ADDRESS ❌ 无 DATA ✅ 有 STATUS(OUT + DATA1)
SET_CONFIGURATION ❌ 无 DATA ✅ 有 STATUS(OUT + DATA1)
SET_INTERFACE ❌ 无 DATA ✅ 有 STATUS(OUT + DATA1)
相关推荐
HIT_Weston10 小时前
18、【Ubuntu】【远程开发】技术方案分析:私网ip掩码
linux·tcp/ip·ubuntu
cccccc语言我来了10 小时前
(Linux (6):从包管理到工具探索,构建系统操作基础认知)
linux·运维·服务器
好望角雾眠10 小时前
第四阶段C#通讯开发-9:网络协议Modbus下的TCP与UDP
网络·笔记·网络协议·tcp/ip·c#·modbus
网安小白的进阶之路11 小时前
A模块 系统与网络安全 第四门课 弹性交换网络-5
网络·安全·web安全
8K超高清11 小时前
高校巡展:中国传媒大学+河北传媒学院
大数据·运维·网络·人工智能·传媒
ben9518chen11 小时前
嵌入式Linux C语言程序设计九
linux·c语言
C2H5OH66611 小时前
WebSocket-练习1
网络·websocket·网络协议
狂奔的sherry11 小时前
Socket vs WebSocket
网络·websocket·网络协议
wuk99811 小时前
CentOS7环境搭建L2TP服务器
运维·服务器
恒创科技HK11 小时前
香港1核2G云服务器当网站服务器够用不?
运维·服务器