在linux开发板上写c程序实现modbus,对于同一段代码、串口助手发的同一行数据,开发板上获取的值不同

在linux开发板上写c程序实现modbus,对于同一段代码、串口助手发的同一行数据,开发板上获取的值不同,有两种表现,1.完整接收 2.接收八个字节后认为后面是另一帧数据。第一张图为串口调试器,循环发送第一行数据第二张图是代码部分,waittime是3625us,waitinterval是1562us第三张图是屏打印结果
写错了,waittime的时间是1ms+3645us

通讯过程总是会出现掉帧现象,程序要做好容错,每个数据包都要有校验位,方便接收端检校,检校到异常包则丢弃,并再次请求数据包。
温馨提示:答案为网友推荐,仅供参考
相似回答