阅读:3179回复:12
USB通讯协议入门问题
在USB设备枚举完成后,DEVICE 和 HOST 是如何通讯的.
比如说: HOST 有数据要发送到 DEVICE , 它怎么通知 DEVICE 接收.这里HOST 向 DEVICE 发送什么包, DEVICE 如何动作. 反之 DEVICE-->HOST 也一样. 我翻遍了手边的资料也没有说明. 请告诉我具体过程, 或者告诉我具体去看什么资料. 谢谢了 |
|
沙发#
发布于:2004-09-23 09:34
楼上的hongjuanguodong兄,
"枚举完成了设备空闲吗?主机不发送类命令吗"你这个话是什么意思?是我理解的不对么? 如果是请说出正确的是什么? 还有,你上一个回复里面的"主机发送CBW(命令块包)",这个CBW应该已经是上层软件完成的工作了.我要问的是协议层的问题, 在完成枚举后,HOST发送什么包. |
|
板凳#
发布于:2004-09-22 17:49
给你一个网站http://embedusb.51.net/html/download.htm
枚举完成了设备空闲吗?主机不发送类命令吗 |
|
地板#
发布于:2004-09-22 17:09
楼上的hongjuanguodong兄,
(1) "主机发送CBW(命令块包)"是什么东西. 我刚才在usb1.1协议里面找了没有这个东西的说明. 拜托能不能具体说明一下,或者具体告诉我哪儿有说明 (2) 关于如何知道已经枚举成功:在枚举的最后步骤 HOST 读取"设备接口信息"成功以后,USB设备应该处于IDLE(空闲)状态.这个时候不就是枚举成功了么? |
|
地下室#
发布于:2004-09-22 16:41
批量传输中是主机发送CBW(命令块包)来告诉设备执行什么命令,你的枚举完成了,是如何知道枚举完成了呢
|
|
5楼#
发布于:2004-09-22 16:30
别沉了
|
|
6楼#
发布于:2004-09-22 11:51
uhci ohci 不在usb1.1 规范里。 他们是主机规范。你搜一下就知道了。
如果你要做的是从机根本就不需要看。很麻烦的。 |
|
|
7楼#
发布于:2004-09-22 11:22
路上的hero_fy兄,
你所说的setup包是不是指如下的东西: SYNC OUT(PID) ADDR ENDP ----- 对于OUT ( HOST-->DEVICE ) SYNC IN (PID) ADDR ENDP ----- 对于IN ( DEVICE-->HOST ) |
|
8楼#
发布于:2004-09-21 10:11
楼上的兄弟,你说的那2个我在USB1.1协议上没有找到.你能不能具体一点告诉我是那一章的,大概什么位置.
|
|
9楼#
发布于:2004-09-18 08:21
usb1.1 or usb2.0
usb1.1 参看 uhci 和 ohci 主机协议 usb2.0 参看 ehci 主机协议。 搜索一下就知道了。 |
|
10楼#
发布于:2004-09-17 19:08
不太明白.
"1、HOST先发setup令牌包,令牌包时面的数据是申请,如果要向DEVICE发送数据,就是控制OUT传输的申请,如果要读取DEVICE的数据,就控制IN传输的申请" HOST 发送 setup 包,应该在setup 后面紧跟着 ADDR+ENDP "令牌包时面的数据是申请", 那这个申请里面发什么命令呢? 我在usb的协议里面没有找到.能不能解释的详细一点,或者告诉我看什么资料. 我的qq:395567332,能不能+我,可以方便请教 |
|
11楼#
发布于:2004-09-17 19:07
不太明白.
"1、HOST先发setup令牌包,令牌包时面的数据是申请,如果要向DEVICE发送数据,就是控制OUT传输的申请,如果要读取DEVICE的数据,就控制IN传输的申请" HOST 发送 setup 包,应该在setup 后面紧跟着 ADDR+ENDP "令牌包时面的数据是申请", 那这个申请里面发什么命令呢? 我在usb的协议里面没有找到.能不能解释的详细一点,或者告诉我看什么资料. |
|
12楼#
发布于:2004-09-17 17:42
简单的理解如下:
1、HOST先发setup令牌包,令牌包时面的数据是申请,如果要向DEVICE发送数据,就是控制OUT传输的申请,如果要读取DEVICE的数据,就控制IN传输的申请 2、DEVICE收到令牌包后,解析里面的申请,如果是OUT申请,就接收数据,如果是IN申请,就发送数据给HOST 3、然后就是相应的握手包 大家一起讨论啊! ;) |
|