测试LabVIEW版本:LabVIEW2021
摘要
在下位机(单片机)和上位机通信的数据传输显示常用到LabVIEW,为了保证数据传输的稳定以及数据的保真,通常下位机发送的数据都是具有数据“帧头”和“帧尾”的一帧数据,那么就需要LabVIEW对单片机发送的数据进行正确的筛选以及重构成我们想要的一帧数据或者多帧数据,本文章只对接收到的下位机数据进行精确识别。
程序功能:
1. 能够自动从接收到的数据中筛选出正确的数据帧;
2. 对于“截断”类型的数据能够准确识别数据的“头部”和“尾部”
3. 能够自动将识别的正确数据重新组合成新的数组,便于后续数据的解析和计算;
4. 能够识别任意长度的帧头和帧尾,并且对于任意长度的数据帧都能正确解析。
具体功能,后面举例子验证。
程序编程结果验证:
验证1:
输入:输入数据包括帧头16进制【AA BB CC】,帧尾16进制【FF FF FF】
输出:对于数据帧没有干扰的数据能够精确识别出数据,并且通过数组形式输出;
验证2:
输入:对于添加干扰的数据帧,能够准确剔除
输出:筛选出正确的数据
验证3:
截断数据帧数,能够准确识别前半段和后半段,便于数据的拼接;
输入:截断数据后的字节
输出:能够筛选出完整的数据帧,并且提取截断的帧头和帧尾,便于下次的数据拼接
验证4:
对于任意的帧头和帧尾数据帧都能准确筛选
程序思路:
1. 首先识别帧头帧尾个数;
2. 然后根据正确数据的长度进行逐个的筛选正确数据帧;
3. 最后识别 的数据进行数组重构。
程序源码自行下载:
https://download.youkuaiyun.com/download/weixin_42721131/87431926