ch372 delphi长时间读数据问题
delphi + ch372 + stc单片机

delphi端:
CH375SetTimeout(arDeviceInfo[0].handler, 3000, 3000 )

循环 1500ms
先调用 CH375WriteData(),然后单片机中断触发后 写数据到bulk端口,
再调用 CH375ReadData(),



程序调试和刚开始运行是正常的。

同样的代码 一旦运行大概 2个小时或者更长 时间以后,就读写不到数据了。单片机接串口,正常有写数据到bulk的日志,这时候也没有动静了。我分析 即使调用了CH375WriteData和CH375ReadData,因为有超时的设置,所以它们还是一样运行,但单片机那边就收不到ch372发的中断了。所以也就不会写数据到bulk.

这时候如果把windows端程序关了 重新再执行,单片机那边不动,系统又恢复正常了。

不知道这是什么原因?



这人很懒,什么都没留下
1.先用CH372EVT\PUB\TEST里面的上下位机例子长时间运行,看是否存在硬件问题。
2.你的delphi例子中的超时设置5000是否有改善。
Email:zyw@wch.cn Tel:02552638368
用类似 CH372EVT\PUB\TEST里面的上下位机例子, 方法相同,不停的读写。
实验了5次,在循环 到 177456, 582695,381110,11899,208775 处就开始出错了。

(超时值已经设为5000了)

不知道这个稳定性有什么好的解决办法
这人很懒,什么都没留下
这个需要检查你的硬件上面:
1,USB口的外壳是否接地?如果没有接地可能会导致传输不稳定。
2,V3引脚的电容是多大?正常情况下应该为103。
3,USB线是否为屏蔽线?
4,USB的UD+和UD-是否串接电阻,正常情况下是不需要串接电阻的,即使串接,电阻不应该超过5欧姆。同时USB的UD+和UD-在走线的时候尽量走平行线。ud+和ud-两边尽量的多铺铜。
E-MAIL:fqb@wch.cn TEL:025-52638375
1.未接
2.是103
3.是屏蔽线
4.铺铜铺的不好,要改改

先做实验,接线usb口接地测试一下,不行就得重新画板,重新铺铜试试。
这人很懒,什么都没留下
test软件就是测试通信的稳定性而作的软件。出现通信异常可以确定一定是硬件有问题。建议你先飞线将你现在的硬件测试稳定之后在进行改版。
E-MAIL:fqb@wch.cn TEL:025-52638375
换了另外一个ch376的ic,那个板布线 的注意事项1,2,3 已经可以。第4条的 d+ d-走平行线和两边铺铜也可以。 但没有接电阻那些。软件测试依然过不了。
这人很懒,什么都没留下
只有登录才能回复,可以选择微信账号登录