全速设备驱动是否一定要设置多个pipe?一个pipe的全速设备能不能达到12Mbps呢? 假如设置多个PIPE,计算机向设备发的数据怎么样在多个pipe上平衡?
回复(12) 2003-10-23 09:44 来自版块 - USB驱动开发
表情
jinghuiren那是按协议要求做的,一般不需要那么多的,比如cy的68013总共有7个端点,其中3个可配置成控制端点,4个可配置另外三种传输的端点,比如如果你的设备需要同时支持控制传输,int/iso和bulk四种传输,那么就需要至少7个端点,端点0是默认的控制in/out,还有int、iso、...(2003-10-28 21:26)
qhyntjs谢谢各位,我知道了增加pipe是不可以提高速度的。 但是设备里提供那么多pipe什么时候用呢?既然多个pipe不可以提高速度,那么要那么多pipe有何用?呵呵,大家是不是被问烦了?(2003-10-28 17:59)
qhyntjs谢谢各位积极回帖子!真的感谢! 再次感谢 tomjin jinghuiren bjzps pengenwen (2003-10-28 17:53)
pengenwen用户被禁言,该主题自动屏蔽!(2003-10-28 16:46)
jinghuirenbjzps的说法很对,pipe之间的切换是需要花费时间的,实际上使用一个端点是速度最快的,而且根本没有必要设置多个端点,端点越多速度反而会越降下来。 (2003-10-28 16:41)
bjzps我想是不可以的了 usb的12m的理论数据是不考虑协议,完全物理特性上计算出的 你多加了几个pipe,并没有修改物理上的性能,所以不会增加速度 我觉得这里的速度关键是看你写的驱动和协议的好坏,和你的处理芯品速度,中断响应都有关系。 你不必要的增加了几个pipe的话,可能增...(2003-10-28 15:23)
qhyntjs谢谢bjzps, U盘用三个端口我了解过了。但是是不是再多用几个pipe可以达到更高的速度呢? (2003-10-27 18:40)
bjzps我也来说2句 usb从物理上来看就是4根线d+,d-,电源和地 所以他只支持半双工双向传送,就是不能同时收和发 pipe除了开始用的控制端,一般都是要不做输入,要不做输出 多pipe可以省的配置了 必然u盘一般是3个 0默认控制 1bluk in 2bluk ou...(2003-10-27 17:49)
qhyntjs谢谢jinghuiren, 既然同一时间里,只有一个端口可以读写,那么其它那么多的端口怎么用。我看书上说全速设备可用多个端口。(2003-10-27 16:51)
jinghuiren你的理解有点问题,在usb传输中,通常都是点对点的,也就是说如果你想往端点1写数据,那么只有这个端点能接收传下来的数据,其它端点是不能接收数据的,反之亦然,如果你同时往端点1和2写数据,那么只能是端点1接收端点1的数据,端点2接收端点2的数据,不会出现传往1、2得数据端点1都收到...(2003-10-23 14:59)

返回顶部