打印

重新插拔USB连接线通讯又正常

[复制链接]
572|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stly|  楼主 | 2017-11-5 12:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有一个USB设备,采用的是Cypress公司的EZUSB芯片,驱动采用的是他自带的EzUsb.sys。一般情况下我的设备通讯良好,但是如果电气上有干扰,如开关某些电气设备,经常发生通讯中断的情况。我的应用程序再也不能从EzUsb.sys取得数据,我发送ResetPipe、AbortPipe等都无法使通讯正常(我不能确认有没发送成功)。但是只要我重新插拔USB连接线,通讯又正常了。
沙发
llljh| | 2017-11-5 12:03 | 只看该作者

电气上、驱动程序或者应用程序去解决

使用特权

评论回复
板凳
dingy| | 2017-11-5 12:05 | 只看该作者
通讯怎么传输的?

使用特权

评论回复
地板
stly|  楼主 | 2017-11-5 12:06 | 只看该作者
通讯时,采用的是批量传输,64字节的包。出现这种情况时,USB设备并没有死机,仍然在运行的,只不过无法通讯了。

使用特权

评论回复
5
renyaq| | 2017-11-5 12:09 | 只看该作者
换成高质量经认证的USB电缆(至少是移动硬盘用的)从供电电源上想辙,如果是开关电源,换成模拟电源试试(变压器调压那种)供电电源插座上带滤波电路;直流供电线上用抑制噪声的器件

使用特权

评论回复
6
supernan| | 2017-11-5 12:10 | 只看该作者

电路板的电源线上加EMC器件;电路板布线用四层,按照CYPRESS USB板的要求布线,机箱屏蔽,换成经EMC测试的机箱;公共端接地

使用特权

评论回复
7
supernan| | 2017-11-5 12:11 | 只看该作者

嗯,你用的全速通讯,与评估板相比,是否在电路上省略了器件,比如USB线上的EMC器件;
再多的,就是EMC,参看村田等公司的设计要求。

使用特权

评论回复
8
xxrs| | 2017-11-5 12:14 | 只看该作者
系统干扰没处理好吧???

使用特权

评论回复
9
houcs| | 2017-11-5 12:16 | 只看该作者

可以在程序中加入保护啊。。。当通讯失败,从新启动   就可以了。。
软件reset。

使用特权

评论回复
10
stly|  楼主 | 2017-11-5 12:18 | 只看该作者

我的软件不允许重新启动,只能通过驱动程序或者应用程序后台恢复通讯。
不知怎么样实现软件reset呢?

使用特权

评论回复
11
yinxiangh| | 2017-11-5 12:20 | 只看该作者

硬件可靠性必须得到保证

使用特权

评论回复
12
pangb| | 2017-11-5 12:22 | 只看该作者


查线路,对应芯片datasheet增加保护电路。
最好拿分 析仪器抓到问题点分析。

使用特权

评论回复
13
ousj| | 2017-11-5 12:24 | 只看该作者
如果不是high   speed,d+,d-上应该是有电容滤波保护的。

使用特权

评论回复
14
zyf部长| | 2017-11-5 12:25 | 只看该作者
换个非USB的产品,USB产品在这块上是绝对弱项,没有跟治办法。

使用特权

评论回复
15
kangzj| | 2017-11-5 12:27 | 只看该作者

也可考虑解决硬件上的干扰问题
供电电源抗干扰性差,在开关其它设备时被冲击,给你的设备提供一个好的电源

使用特权

评论回复
16
wangzsa| | 2017-11-5 12:30 | 只看该作者

换个屏蔽好的USB连接

使用特权

评论回复
17
chuxh| | 2017-11-5 12:31 | 只看该作者
有些USB设备,断开后,即使关机重启都不管用。

使用特权

评论回复
18
stly|  楼主 | 2017-11-5 12:33 | 只看该作者

哦,知道了,多谢大家

使用特权

评论回复
19
拓少| | 2017-11-11 07:44 | 只看该作者
你好,你这种情况,我觉得你可以从固件的代码入手排查问题
由于每个USB固件实际应用环境和外接电路不同,也没有办法帮你准确定位。

1. USB在拔插过程中一定会产生RESET和CONFIGUE事件,你检查下在这个事件里有没有加入除开USB操作以外的操作。
2. 根据实际测试,resetpipe,abortpipe(或者resetendpoint,abortendpoint)仅仅只是对底层端点的标志位进行复位。你可以在PC尝试resetdevice来复位设备,复位设备后也会产生上述两个事件,如果打比方,就好像是不拔掉线的拔插事件(没有disconnect事件和connect事件)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

7058

帖子

0

粉丝