VISA读取串口连续发来的数据出错

2019-07-18 02:57发布

下位机以10Hz速率连续向PC发送数据帧,利用VISA读函数按100ms周期性读串口,会出现篡位和多数据的现象。

如,下位机持续发送 S:1.1 1.2 1.3 1.4,上位机刚开始接收数据正常,而几分钟后则会收到类似如下几种的格式:
1. S:1.1 1.2 1.3 1.4  (数据丢失);
2. ^S:1.1 1.2 1.3 1.4 (多余数据^);
3. S:1.1 1.1.3 1.4       (数据2 丢失)。

现在不知道该怎样解决了,请了解的小伙伴们给予帮助吧!
遇到过类似问题的可以讨论讨论
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
stone927
1楼-- · 2019-07-18 06:21
原因1:硬件干扰太多,可尝试使用更低的波特率测试;
原因2:波特率设计错误,可用示波器测量,看实际波特率是否和预期相同;
suoai1215
2楼-- · 2019-07-18 10:52
stone927 发表于 2015-8-27 10:25
原因1:硬件干扰太多,可尝试使用更低的波特率测试;
原因2:波特率设计错误,可用示波器测量,看实际波特率是否和预期相同;

我用串口调试助手接收到的数据是正常的,没有发生异常
suoai1215
3楼-- · 2019-07-18 11:48
问题已解决。
利用队列功能就能够完全记录了

一周热门 更多>