benchu 发表于 2024-1-15 15:47:58

数据丢包

M系列进行485传输时,解析数据出现丢包的问题。测出packet是有47帧报文但是我发送的远远大于此数,然后发现有数据丢包的情况,请问一下如何解决

If后要接end 发表于 2024-1-15 15:55:37

用的自由串口协议?

benchu 发表于 2024-1-15 16:06:56

If后要接end 发表于 2024-1-15 15:55
用的自由串口协议?

是的,采用的是只有串口协议

axaxaxzx 发表于 2024-1-15 16:19:43

回调函数会将数据分包 你需要用脚本处理数据接收是否完成

benchu 发表于 2024-1-15 16:26:37

axaxaxzx 发表于 2024-1-15 16:19
回调函数会将数据分包 你需要用脚本处理数据接收是否完成

我们数据是一直发送的,进来一次就要把包里面数据处理掉,每次进来大概是五百多字节。

If后要接end 发表于 2024-1-15 16:47:01

benchu 发表于 2024-1-15 16:26
我们数据是一直发送的,进来一次就要把包里面数据处理掉,每次进来大概是五百多字节。
...

参考这里面串口回调的接收处理方法

https://doc.gz-dc.com/LUA/15_uart_free_protocol.html

benchu 发表于 2024-1-15 16:50:22

If后要接end 发表于 2024-1-15 16:47
参考这里面串口回调的接收处理方法

https://doc.gz-dc.com/LUA/15_uart_free_protocol.html ...

我的情况不符合里面的三种情况我是自己写的,大概模式是和定长类似,但是我是先确定id才定长的,这样子我丢包了

Cp`sir 发表于 2024-1-18 16:41:53

benchu 发表于 2024-1-15 16:50
我的情况不符合里面的三种情况我是自己写的,大概模式是和定长类似,但是我是先确定id才定长的,这样子我 ...

485是半双工,收发会有冲突对冲,在设计指令交互、UI交互时候,屏幕应该作为从设置,被动接收,比如点击安按钮,不能主动发出去。或者屏幕当做主设备,主板不能主动发指令出来,总体可以参考modbsu 主从协议
页: [1]
查看完整版本: 数据丢包