重新插拔USB连接线

[复制链接]
9954|16
 楼主| wangzsa 发表于 2012-2-21 22:34 | 显示全部楼层 |阅读模式
我有一个USB设备,采用的是Cypress公司的EZUSB芯片,驱动采用的是他自带的EzUsb.sys。

一般情况下我的设备通讯良好,但是如果电气上有干扰,如开关某些电气设备,经常发生通讯中断的情况。我的应用程序再也不能从EzUsb.sys取得数据,我发送ResetPipe、AbortPipe等都无法使通讯正常(我不能确认有没发送成功)。但是只要我重新插拔USB连接线,通讯又正常了。
zhanglli 发表于 2012-2-21 22:40 | 显示全部楼层
通讯时是怎么传输的?
 楼主| wangzsa 发表于 2012-2-21 22:42 | 显示全部楼层
通讯时,采用的是批量传输,64字节的包。
 楼主| wangzsa 发表于 2012-2-21 22:44 | 显示全部楼层
电气上有什么解决方法,驱动程序或者应用程序上有什么解决方法?
yufe 发表于 2012-2-21 22:48 | 显示全部楼层
出现这种情况时,USB设备死机了没有?
 楼主| wangzsa 发表于 2012-2-21 22:52 | 显示全部楼层
没有,仍然在运行的,只不过无法通讯了。
jinpaidianzi 发表于 2012-2-21 22:56 | 显示全部楼层
这是经验吗?
langgq 发表于 2012-2-21 22:58 | 显示全部楼层
可以在程序中加入保护啊。。。当通讯失败,从新启动   就可以了。。
软件reset。
 楼主| wangzsa 发表于 2012-2-21 23:01 | 显示全部楼层
我的软件不允许重新启动,只能通过驱动程序或者应用程序后台恢复通讯。
llia 发表于 2012-2-21 23:04 | 显示全部楼层
检查线路,对应芯片datasheet增加保护电路。
zhuww 发表于 2012-2-21 23:06 | 显示全部楼层
最好拿分析仪器抓到问题点分析。
hanwe 发表于 2012-2-21 23:09 | 显示全部楼层
如果不是high   speed,d+,d-上应该是有电容滤波保护的。
guoyt 发表于 2012-2-21 23:10 | 显示全部楼层
我觉得可考虑解决硬件上的干扰问题
wangpe 发表于 2012-2-21 23:13 | 显示全部楼层
有道理,供电电源抗干扰性差,在开关其它设备时被冲击,给你的设备提供一个好的电源
zhanglli 发表于 2012-2-21 23:15 | 显示全部楼层
换个屏蔽好的USB连接
 楼主| wangzsa 发表于 2012-2-21 23:18 | 显示全部楼层
好的,我试试,结贴了
liangziusb 发表于 2012-2-22 09:09 | 显示全部楼层
我来补充一下,与现场相关的应用,原则上都得隔离,包括信号与电源。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

914

主题

9040

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部