阅读:1712回复:10
对USB的一点疑惑或则称为理解也行,大伙看看对不??
批量传输中的有两种基本事务,IN事务和OUT事务
对于Mass Storage 设备类,使用的Bulk-Only传输协议则使用3次IN/OUT事务来完成一次完成的传输, 比如是一个Write10命令: 先用OUT事务来传输命令, 然后再用OUT事务来发送数据到设备, 最有IN CSW 而0x2f命令则只用了 OUT CBW IN CSW 两个事务处理了一个Bulk Only传输 所以Buly 传输只要两个端点IN和OUT端点 在一次Bulk传输中,两个端点交替使用?????? 如上面所说的0x2f命令 先到OUT端点将命令读取过来,然后处理 最后通过IN端点将处理的结果通过CSW命令发送给主机 不知我的理解对否??? |
|
沙发#
发布于:2005-03-18 10:15
大家可以随便说说,事情总是越讨论越明了的。呵呵
|
|
板凳#
发布于:2005-03-18 11:43
批量传输中的有两种基本事务,IN事务和OUT事务 汗~~ |
|
|
地板#
发布于:2005-03-18 11:54
啊,什么意思??不懂呀
|
|
地下室#
发布于:2005-03-18 11:56
我觉得你应该说是对MSC的理解比较好,CBW,CSW要在
USB上传的话USB要做的事情不止两三个步骤。 |
|
5楼#
发布于:2005-03-18 12:10
是以上两三个步骤呀?
只不过把每个IN/OUT事务展开而已 每个IN/OUT又是由3个阶段组成, 我想要确信的是 分给Bulk传输的两个端点IN 和OUT 在一次Bulk-Only传输中,由2~3个过程(IN/OUT事务)组成, 在这些过程中 如果发送数据,就将数据放到IN端点去 如果接受数据,就到OUT端点去读取数据 我这么理解对否,望赐教!!! 可能我的语言表达能力有些差,见笑啦:) |
|
6楼#
发布于:2005-03-18 12:47
这么理解没有错误。
但你完全可以按照IN和OUT的意思来理解 IN的就是设备到HOST的 OUT的就是HOST发出的 但记得,连续的IN封包以空OUT封包结束,连续的OUT封包以IN封包结束,这是协议里面的东东,没什么异议。 一次BULK传输中并非是两个端点交替使用,要看具体数据走向,你所说的交替使用可能是说的Data0/Data1吧 |
|
|
7楼#
发布于:2005-03-18 16:06
USB 是半双工的。不能同时访问 IN OUT 端点。
理解的没错 |
|
8楼#
发布于:2005-03-18 17:44
这么理解没有错误。 是我表达的不严格,不应该称之为交替, |
|
9楼#
发布于:2005-03-18 22:16
这么理解没有错误。 看不懂这一句: 但记得,连续的IN封包以空OUT封包结束,连续的OUT封包以IN封包结束,这是协议里面的东东,没什么异议。 |
|
|
10楼#
发布于:2005-03-19 09:11
呵呵,我也不太理解coolwuya说的“连续的IN封包以空OUT封包结束,连续的OUT封包以IN封包结束,这是协议里面的东东,没什么异议。”
连续的IN最后以OUT CSW封包结束还差不多 |
|