上位机被动接收时,如何保证VISA读取数据的完整性?
时间:10-02
整理:3721RD
点击:
本人做的项目主要是基于M4和LabVIEW的数据采集和信号处理平台设计,现在用ARM Cortex M4 进行AD采样,数据是源源不断传送给上位机的,即上位机处于被动接收状态。
我看了相关资料,打算在while循环里,利用Bytes at Port 属性节点,读取缓冲区数据,再通过移位寄存器将读取的字符串连起来。如何VISA读取数据的完整性?(有人说要设定延时,具体的时间跟字节数相关)
假设传输的数据帧为8个字节(2字节帧头+2字节帧计数+3字节数据信息+1字节帧尾),通过检验帧头帧尾,获取有效帧,这样可以吗?会不会出现,读取到的是2个不完整的帧,用匹配模式,获取的是前一帧的帧头和后一帧的帧尾,这是不是也与延时有关呢?
现在有些困惑,向大家请教......
本人QQ605943783。
参考一下我之前发的一个帖子http://bbs.elecfans.com/forum.ph ... d=460563&extra=
串口的波特率是多少?利用Bytes at Port 属性节点,设置成每次串口有多少字节读多少字节,先把数据取出来,然后再对得到的数据进行分析处理。试过625kbps,上位机以1ms为周期被动收数没有问题。
路过,看看
自动检测帧头+设置好数据长度
如果是读取USB RAW设备的数据,有没有必要用队列处理?