免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2455 | 回复: 3
打印 上一主题 下一主题

当USB设备端捕捉到主机端的URB接收请求,是否一定要回应一段数据? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-30 16:17 |只看该作者 |倒序浏览
问题是这样的,主机端想阻塞接收USB的数据,USB的固件的这样处理响应的:

有数据,发出数据及长度;无数据,发空数据及长度0.

这样就导致主机端接收函数根本没有阻塞点,固件改成没数据就不发送长度0,结果有数据的时候也不响应了.

是协议强制返回长度么?

论坛徽章:
0
2 [报告]
发表于 2010-06-30 21:53 |只看该作者
以前看过usb协议 现在忘的差不多了   lz可以参考网络上讨论比较多的u盘固件设计  
你的问题描述的不太明确 个人感觉     usb协议 还有 设备端的usb接口芯片 这俩重要 {:3_181:}

论坛徽章:
0
3 [报告]
发表于 2010-07-01 09:56 |只看该作者
本帖最后由 fuchuangbob 于 2010-07-01 09:58 编辑

回复 2# 木叉叉木大


    说个具体的吧
  
 我在驱动里写
  for(;; )
  {
       usb_bulk_msg();/*in*/
       ...
       /*hanele */
  }
  这个循环在线程里没有阻塞点,我希望这个操作能阻塞一下,就是说当USB设备无数据提交时,给主机符合USB协议的某种应答,以达到主机端 usb_bulk_msg()将等待直到有数据或超时.这样的设计可能在firmware实现么?

论坛徽章:
0
4 [报告]
发表于 2010-07-05 16:34 |只看该作者
依照我目前芯片的sheet,不可能实现
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP