使用labview编写简单串口采集程序的方法_串口编程入门

使用labview编写简单串口采集程序的方法_串口编程入门使用LabVIEW编写简单串口采集程序1LabVIEW版本使用版本为2018版,使用硬件接口需安装VISA驱动2需要实现的功能设计程序,将串口接收的指定帧头帧尾的数据接收,并提取有效数据位,将数据转为电压值实时显示,并可保存为文本文件。数据帧格式:3界面设计左边是一个接受开关,以及串口的一些设置,左下方是保存路径选择及保存按钮。中间上方实时显示单次接收的数据,为一维数组,下方是累计接收的数据。为二维数组。界面右侧实时显示数据计算出的电压值。4程序设计4.1

1 LabVIEW版本

使用版本为2018版,使用硬件接口需安装VISA驱动

2 需要实现的功能

设计程序,将串口接收的指定帧头帧尾的数据接收,并提取有效数据位,将数据转为电压值实时显示,并可保存为文本文件。

数据帧格式:

使用labview编写简单串口采集程序的方法_串口编程入门

3 界面设计

左边是一个接受开关,以及串口的一些设置,左下方是保存路径选择及保存按钮。中间上方实时显示单次接收的数据,为一维数组,下方是累计接收的数据。为二维数组。界面右侧实时显示数据计算出的电压值。

使用labview编写简单串口采集程序的方法_串口编程入门

4 程序设计

4.1 串口设置

首先设置串口,器件:仪器IO-串口-VISA配置串口,添加串口号、波特率等不多说。

使用labview编写简单串口采集程序的方法_串口编程入门

之后创建一个while循环,把串口关闭放在循环外,其他程序都写在while循环内,循环的条件是串口开关控件ON

注意:在while中需要加入延时,给程序处理时间,否则会乱码。延时时间视情况而定。

使用labview编写简单串口采集程序的方法_串口编程入门使用labview编写简单串口采集程序的方法_串口编程入门

在串口配置后需要添加一个VISA属性节点,具体原因俺也不知道。之后创建一个判断条件,VISA属性节点字节输出不为0,即接收到数据时触发“真”,进行之后的读取与处理。之后是一个串口读取器件。

使用labview编写简单串口采集程序的方法_串口编程入门

4.2 接收实时显示

使用字符串转字节数组,创建显示控件,可显示单次接收到的数据帧。通过创建数据,添加反馈回路可以创建二维数组显示总接受数据帧。

使用labview编写简单串口采集程序的方法_串口编程入门

4.3 有效数据帧判断

有效数据帧的帧头和帧尾都是固定的,使用数组索引对一维数据进行元素查询,我收到的数据帧格式为0x55 0xAA 0xXX 0xXX 0x55 ,故使用多输入与器件对数组的第0,1,4个元素进行判断,若全部相等,则说明接收到完整数据帧。

注意:图中55 AA 55为16进制显示。

使用labview编写简单串口采集程序的方法_串口编程入门

4.4 计算,实时显示电压值

若判断与为真,说明接收到有效数据帧。把一维数组的第2、3个元素,即数据位的高八位乘以256再加上第八位得到AD采样值,使用的是12位AD故除以2的12次方再乘以参考电压3.3V得到测量电压。之后通过字符串拼接给电压值加上V和换行,再首尾相连连续显示。

使用labview编写简单串口采集程序的方法_串口编程入门

4.5 创建,保存文本文件

将电压显示窗口创建局部变量,改为读取模式,点击保存按钮保存为txt文件。

使用labview编写简单串口采集程序的方法_串口编程入门

5 测试

使用虚拟串口创建一堆串口,设置好串口参数,勾选16进制发送。没毛病。

注意:两个数组显示控件都设置为十六进制显示

使用labview编写简单串口采集程序的方法_串口编程入门使用labview编写简单串口采集程序的方法_串口编程入门 

6 结尾

源码下载:https://download.csdn.net/download/qq_38737205/19082061

使用labview编写简单串口采集程序的方法_串口编程入门

运行前需打开开关控件,运行的时候别关开关控件。我是菜鸡,程序有bug正常,源码很简单,第一次发帖大家骂轻点。

本文来源Liwb1874,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/212198
0
   

发表评论