labview串口不断接受数据,怎么保证接收数据的完整性
读取的字节数设置问题吧,要和端口字节数做比较
请问能不能具体一点呀,设置停止符貌似不行啊
labview串口通信大杂烩
http://bbs.elecfans.com/forum.ph ... &fromuid=704899
大神有没有具体的呀,我现在就是不停接受一组数据,刚开始可能是完整的,后来就不完整了- -
关键是我现在接受的数据不确定是接受多少字节的数据,但是末尾是有休止符的
(3)经常看到会有人说串口里面有一堆数据,但是去读的时候却读回来一点点,每次均不相同,这种怀状况是由于串口有一个serial configuration(串行配置)这个节点上面,有一个termination char(终止字符),大家将它设为F就可以了,因为遇到这个终止符,它就会停止读数,所以读回来的就会少了!
本论坛某斑竹说的
这个我试过了,没用。
VISA读取 (函数) 可以设置字节读取数
现在小编有没有解决这问题啊
小编可以尝试每次读取一个字节然后拼接
你好,我是这样处理的。每隔20ms读取一次缓存区数据(全部读出),然后转换为16进制字符串入队列。
然后另一个while循环中出队列合并字符串,查找合并后字符串中是否存在终止符,如果存在则截断并根据校验码判断是否正确,正确则入队列(有效数据队列),终止符以后的字符串通过移位寄存器循环截取。
我用于大批量数据采集,就是这样的,没有数据丢失。除非信号重叠了,但是几率非常小,几天才回一次。但是不影响其他数据的正常收发。
希望可以帮到你。
你好,我是这样处理的。将Ftermination char(终止字符)设为F, 不给读取字符节数设固定值,在VSIA
中选择一个属性节点,选择Number of Bytes at Serial Port, 把这个属性节点连上VISA的字节总数,另外在读取之前设置一个延时,延时的时间取决于要读取字节数多少。
你好,能向你请教一下串口方面的东西吗?我现在做了一个串口数据接受,被动,接收数据不稳定,有时5个数,有时10数,不知道怎么回事,麻烦大神给指点一下可以吗?谢谢
很好的资料,谢谢分享
正遇到这样的问题,谢谢分享
没看明白做个标记,如果可以的话麻烦您把这部分vi共享一下。522533086@qq.com
觉得是个好办法
把读到的数据连在一起 写个判断帧信息的程序 确认一帧取一帧删一帧
VISA配置串口默认的终止符是0A,默认启动终止符,如果你传输的数据有0A这个值,就会认为数据读取已终止,将启用终止符设置为否就可以了,我遇到的是这个问题,希望对你有帮助
定时时间改成1秒看看
你好我想向您问一下如何实现开始提取和停止提取,比如说我想提取(0.5)的值,其中(和)作为开始和终止字符串,他一直进行循环发送,怎么把其中的0.5提取出来
请问这个确认一帧取一帧要怎么做到
路过,对于不钻研的人,没什么卵用
就是这个问题,完美解决。太感谢
您好,请问您一下:用队列的话,不管数据量多大都不会丢数据的,是吗?还有while循环是必须加的吗?
谢谢,学习一下。
你好 请问你这个另一个while循环出队列的字符串是怎么合并的呢 ,通过移位寄存器吗
加油!11
楼上几种方法都很常用
你好,我也有同样的问题,请问你解决了吗?能教教我吗?
大神有没有程序,分享一下
同求
同求
队列啊
队列啊
您能编个实例吗?我尝试了没成功,谢谢
开房间韩国警方根据法国警方
读取字节可以。怎么判断是开始怎么判断结束
正遇到这样的问题,谢谢分享~~
啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
真的很好,对于初学者有很大帮助。小编辛苦了。