logo

[求助]求教下CH376发送数据经常出现丢包和发送失败原因
CH376做主机,与CP2102(USB转串口芯片)通信,设置CP2102的波特率为19200(不高)

现发现CH376接收CP2102数据都是正常的,无丢包和丢数据情况; 但是CH376向CP2102发送

数据时,经常出现丢数据和发送失败等情况;

我个人觉得可能是CH376的接收机制不当导致了CH376的发送有问题;后来为了验证这个观

点,把接收函数去掉,不接收,单独发送,发送一切正常,所以应该是接收机制没写好导致

的。


现在想问的是,为何接收和发送放在一起就有问题了。
接收机制是 定时25ms查询USB接收状态一次,接收在中断里面,无超次;
发送机制是 发送的时候关闭接收定时器,等发送完成后开启
按照这个机制应该没什么问题,关键问题是发送数据出去之后,是一包数据丢了还是一包数据里面只有几个数据丢了?
E-MAIL:fqb@wch.cn TEL:025-52638375
是丢了一包数据里面的几个字节
这人很懒,什么都没留下
那应该是你往CH376里面写数据的时候会不会有中断打断导致数据出现问题?在写数据的过程中一定要关闭全局中断。
E-MAIL:fqb@wch.cn TEL:025-52638375
http://www.wch.cn/bbs/View.asp?S=101&I=52802
这个帖子已经详细解释
Email:lht@wch.cn Tel:02589692339

我的用的是CH378,也出现了丢数据的现象,就是隔一段时间会丢一组数据,大概丢包率在千分之2到千分之3,写数据的时候请问要关闭全局中断嘛?但是我的是采集数据存储,关闭中断以后,那么就不能进行采集了,丢失数据更多啊。

这人很懒,什么都没留下

您可以直接联系我们的技术支持025-52638376,他们会为您处理。

加油!
只有登录才能回复,可以选择微信和github账号登录