[Kinetis] 关于USB通信协议的不解(已解决)

[复制链接]
1663|3
 楼主| huhaomcu 发表于 2014-3-4 14:54 | 显示全部楼层 |阅读模式
本帖最后由 FSL_TICS_A 于 2014-4-1 09:56 编辑

USB协议中说Token Packets的结构是Sync+PID+ADDR+ENDP+CRC5+EOP,Setup Packet是属于Token Packets的,但是为什么Setup Packet的包结构却是bmRequest+bRequest+wValue+wIndex+wLength呢??
FSL_TICS_ZJJ 发表于 2014-3-5 15:14 | 显示全部楼层
楼主你好!
我想你首先需要分清楚“事务处理”处理和数据传输中的“设备请求”的概念。
你所指的TOKEN PACKETS指的是令牌包,你先看看SETUP事务处理,他其实是由3点组成:
1:主机到设备(令牌包):SYNC +SETUP+ADDR+ENDP+CRC5+EOP
2:主机到设备(数据包):SYNC+DATA0+数据+CRC16+EOP
3:设备到主机(握手包):SYNC+ACK+EOP.
而你后面所说的Setup Packet结构其实是一个设备请求,设备请求是在控制传输SETUP阶段由主机发往设备的,通常是默认的控制管道上传输,他的各个字段由主机定义,表达了每一次控制传输的目的。请求有8个字节。
请求其实可以是一个SETUP事物-》IN事物-》OUT事物的过程。
由于内容比较复杂繁琐,建议你还是先找一本书看看,比如清华大学出版社的嵌入式技术基础与实践(第3版)。
这本书里面将的而相对还是比较易懂与清楚的,希望能帮到你。
FSL_TICS_ZJJ 发表于 2014-3-5 17:52 | 显示全部楼层
本帖最后由 FSL_TICS_ZJJ 于 2014-3-6 13:20 编辑

请求bmRequest+bRequest+wValue+wIndex+wLength的8个字节,放在数据包类型的DATA0后面的数据中。
FSL_TICS_A 发表于 2014-4-1 09:55 | 显示全部楼层
楼主你好,如果你的问题已经得到解决,建议根据 本论坛中结贴方式  帖子描述方式操作结贴。
如果问题尚未解决,可以继续讨论。
谢谢大家配合
您需要登录后才可以回帖 登录 | 注册

本版积分规则

190

主题

509

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部