59-应用调试07:报文抓取与分析
专栏总目录
文章目录
- 概述
- 一、控制传输总体结构
- 1.1 三阶段组成
- 二、设置阶段
- 2.1 SETUP事务组成
- 2.2 SETUP包字段
- 2.3 链路编码(NRZI)
- 三、数据阶段
- 3.1 读操作(设备→主机)
- 3.2 写操作(主机→设备)
- 3.3 零长度数据
- 四、状态阶段
- 4.1 读操作后的状态(OUT)
- 4.2 写操作后的状态(IN)
- 4.3 状态阶段方向规则
- 五、完整控制传输示例
- 5.1 读取设备描述符
- 5.2 设置设备地址
- 六、常见问题
- Q1: 为什么数据阶段可以为0个事务?
- Q2: NAK和STALL有什么区别?
- 七、知识总结
概述
USB控制传输由三个阶段组成:设置阶段、数据阶段、状态阶段。本文深入分析每个阶段的包结构、事务组成和链路波形,帮助理解USB底层通信机制。
