sniper167
驱动中牛
驱动中牛
  • 注册日期2006-07-12
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分13分
  • 威望411点
  • 贡献值0点
  • 好评度321点
  • 原创分0分
  • 专家分0分
阅读:1018回复:2

关于gofayao的帖子“写了一点自己学习USB的感受,欢迎大侠指正”,请教几个问题

楼主#
更多 发布于:2007-04-10 17:40
gofayao兄在帖子里说到:
首先,要明白两个观点。第一,USB总线上所有的事务(数据流传输)都是由USB Host主动发起,而USB设备永远永远都是只是被动地接收然后处理USB Host发来的各种各样的命令(要求)。。。
这是gofayao兄的帖子地址:http://bbs.driverdevelop.com/htm_data/9/0704/100641.html
--------------------------------------------------------------------------------------------------------
我有点不明白,
比如,如果用户有如下操作:从U盘往PC上拷贝文件。
这个时候怎么处理?

难道是这样?
host每间隔一段时间就发送命令,询问USB设备,你是否有东西要传送?
这时,USB设备便回应有数据要传送。
USB Host收到回应后,便发命令告诉USB设备,说,我做好准备,你可以传了
此时,数据传送便开始了

或者是这样:
当USB设备有数据要传送给HOST时,USB设备会直接往HOS的fifo里面写入需要传送的数据,大小当然是fifo缓冲的大小,这个动作将会产生一个中断告诉HOST,USB设备有数据要传送了,HOST便去fifo把已经传送的数据取走,并清除中断,然后开始发命令询问USB设备,还有没有数据要传?有就继续,没有就结束。

请各位指点
[url]http://sniper167.bokee.com[/url]
gofayao
驱动牛犊
驱动牛犊
  • 注册日期2005-01-11
  • 最后登录2007-04-15
  • 粉丝0
  • 关注0
  • 积分210分
  • 威望21点
  • 贡献值0点
  • 好评度21点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2007-04-13 20:40
Re
从U盘往PC上拷贝文件时,你是不是得在PC上执行一个复制,粘贴的动作啊??

你只有执行这个动作之后,U盘才知道你PC要拷数据啊,不然,U盘肯定不会无缘无故就把数据往PC上扔吧,要是这样不就乱套了...

那既然你在PC上有复制粘贴这样的动作,那么这个动作就可以实际转化为USB主机向U盘下的读命令,这样U盘才会把数据发给主机.... 那不就是主机是主动,U盘是被动嘛.....
追求卓越...
sniper167
驱动中牛
驱动中牛
  • 注册日期2006-07-12
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分13分
  • 威望411点
  • 贡献值0点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-04-14 09:38
呵呵
感谢兄弟 明白了
[url]http://sniper167.bokee.com[/url]
游客

返回顶部