LabVIEW串口通信

article/2025/11/11 10:30:18

目录

1、串口写入数据

2、串口读取数据

3、清除缓存区

4、设置缓存区

5、数据超时

6、数据终止符


串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节的通信方式。在LabVIEW中串口通信使用范围非常广泛,例如,通过串口使用ModBus协议驱动仪器、串口驱动PLC设备等。

在LabVIEW中有专业的VI(VISA)可以驱动串口进行数据读、写操作,在函数面板 → 仪器I/O → 串口子面板中,如下图所示:

相应的说明可参见帮助文档,如下图所示:

通过几个简单的Demo示例了解VISA串口函数的使用方法。

代码下载:LabVIEW串口通信-嵌入式文档类资源-CSDN下载

1、串口写入数据

打开串口COM3,通信速率115200/bps,写入数据:A1$,示例代码如下所示:

2、串口读取数据

打开串口COM8,通信速率115200/bps,读取20个字节长度数据,示例代码如下所示:

3、清除缓存区

以上两种方法介绍了LabVIEW串口最基本的读、写操作,实际上直接这样使用的存在问题的。 

因为在大多数情况下串口设备不管在LabVIEW执行或着关闭的状态都一直在上传数据。端口在收到第一个字符的时候可能没有被配置好,所以它读到的是无效的缓冲区信息,这样直接开启后进行读、写数据极其容易导致错误。

为了解决这样的问题,在串口配置后需要放一个延时(大约XXXms),就可以让Serial port有足够的时间完成设定。再来使用VISA清空I/O缓冲区函数,就可以将接收缓冲区中不正确的资料清除。对串口读取功能进行优化,示例代码如下所示:

以下示例中读取数据长度的方式进行优化,通过属性节点(Bytes at Port)获取字节长度,无需再手动定义长度,避免定义长度太短导致接收不全或者定义数据过长导致浪费情况。

4、设置缓存区

目前VISA串口缓冲区大小最大可达到 2的32次方(4,294,967,296 字节),可以在该范围内定义缓存区大小,例如以下示例,定义缓冲区大小为80000字节。

5、数据超时

在初始化VISA串口时,可以设置超时时间,当读、写数据超出时间,会提示错误信息。

以下示例定义串口通信超时时间是10秒。

6、数据终止符

在初始化VISA串口时,可以设置终止符,通过调用终止读取操作,从串行设备读取终止字符后读取操作会自动终止。例如以下示例,读取到“$”字符(十六进制:0X36)时,会停止读取操作。

代码下载:LabVIEW串口通信-嵌入式文档类资源-CSDN下载


http://chatgpt.dhexx.cn/article/J7efjyDm.shtml

相关文章

下载安装LabVIEW

下载安装LabVIEW 介绍下载安装流程下载安装 后续 介绍 LabVIEW 是 工程 师 用来 开发 自动 化 研究、 验证 和 生产 测试 系统 的 图形 化 编 程 环境。Labview作为图形化编程语言,图形控件拖拽式编程,显得更加直观形象,也很容易上手学习。 …

labview自制对话框

自制对话框 前言一、环境二、实现1.找图标2.新建VI,并进行以下设置3.界面布局3.1.放置一个字符串控件用于消息提示3.2.放置一个“确定”和一个“取消”按钮3.3.添加图标显示---画龙点睛3.4.适当调整布局 4.封装4.1.程序框图4.2接口 三、效果 前言 labview提供的对话…

LabView 下载与安装

labview2014是目前labview软件的最新版本,新版本增加了多个VI服务器对象,增加了多个vi脚本对象,增加了labview第三方许可和激活工具包,同时针对程序框图、编辑环境、应用程序生成器、web服务、触摸面板功能、前面板等进行了改进和优化,让用户可以更好的随时随地快速采集、…

labview 各版本及其模块工具下载汇总

labview 各版本模块工具汇总: http://download.ni.com/#evaluation/labview/ekit/other/downloader/http://download.ni.com/#evaluation/labview/ekit/other/downloader/—————————————————————————————————————————— …

VIPM安装超时无法连接到LabVIEW

首先,在LabVIEW中完成以下步骤以配置与VI服务器的连接。 单击工具选项以启动“选项”对话框。从左侧的“类别”部分中选择VI服务器 。勾选“协议”部分的TCP / IP复选框。记住端口号 。3363是默认端口号。您不需要使用默认值,但LabVIEW和VIPM必须被设置…

Labview2015安装教程

1、下载解压文件后,点进去刚刚解压的文件中,找到2015 LV这个软件,右键以管理员身份运行。 2、进去后,点击确定后就可以运行 3、选择第一个Unzip,勾选这两个选择 4、之后弹出这个确认消息,点击确定 5、点…

LabView2019的安装与卸载

LabView2019的安装 注:此版本为英文版,如需要要中文版的请参考LabView2018的安装 1. 下载网盘里面的LabView2019.zip压缩包 百度网盘链接:https://pan.baidu.com/s/1gyiFn5nOdPkLdp-1kRwwHA 提取码:labv    阿里云盘链接&…

labview 界面乱码问题解决

labview 界面乱码问题解决 **首先,打开控制面板的时钟、语言和区域,然后点击更改显示语言 ** 接着分别在格式、位置、管理这三个地方更改为中文(简体,新加坡)、新加坡、中文(简体,新加坡&#…

ubuntu下,下载及安装labview(涉及挂载.iso文件)的方法

在ubuntu环境下安装labview,本文总结了自己在安装过程中遇到的一些问题及解决方法,作为学习记录的同时,也分享一下供大家参考。主要涉及以下几个方面: 1、下载linux系统的安装包 2、.iso安装包的挂载及“只读权限”问题处理 3、…

LabView2018的安装

百度网盘链接:https://pan.baidu.com/s/1gyiFn5nOdPkLdp-1kRwwHA 提取码:labv    阿里云盘链接:https://www.aliyundrive.com/s/vBKNYBdLsXV 阿里云盘无法分享压缩包,因此改了文件格式,下载完后缀名改回.zip即可 安装…

labview插件下载

官方下载地址http://download.ni.com/#evaluation/labview/ekit/other/downloader/ labview 注册机 链接:https://pan.baidu.com/s/1VKEGFIYrLEk85FQdEe-OVQ 提取码:acsj NI LabVIEW软件可以通过多种方式与任何可编程逻辑控制器(PLC&#x…

LabVIEW下载 安装 和谐 与卸载教程

一. 简介 LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而La…

使用Modbus将LabVIEW连接到任何PLC

使用Modbus将LabVIEW连接到任何PLC NI LabVIEW软件可以通过多种方式与可编程逻辑控制器(PLC)通信。 Modbus是Modicon于1979年发布的用于与PLC进行通信的串行通信协议,后来被扩展为TCP协议。 Modbus由于其可用性而成为业界事实上的标准通信协议…

LabVIEW2020下载与安装教程

链接: https://pan.baidu.com/s/15mAoxOT_9aMnUQet08Wj4g 提取码: evvm 此教程为Labview2020 中文版的安装教程,英文版安装过程相同。 打开解压后的文件夹,进入安装包目录,双击运行【Install.exe】开始安装。 接受许可协议,下一步…

LabVIEW2021中文版安装包、工具包、安装教程下载

下载链接:http://www.eeecontrol.com/labview2021.php 《LabVIEW2021安装图文教程》 1、解压后,双击install.exe安装 2、选中“我接受上述许可协议”,点击下一步 3、点击下一步,安装NI Package Manager 4、NI Package Manager安装…

LabVIEW2022中文版安装包、工具包、安装教程下载

下载链接:http://www.eeecontrol.com/labview2022.php 《LabVIEW2022安装图文教程》 1、解压后,双击install.exe安装 2、选中“我接受上述许可协议”,点击下一步 3、点击下一步,安装NI Package Manager 4、NI Package Manager安…

Django项目:LOL学院学员管理系统

文章目录 Django项目:LOL学院学员管理系统表结构设计登录注册页面登录处理视图逻辑和URL批量插入LOL英雄信息英雄信息主页英雄信息分页封装分页功能添加和编辑英雄信息预留钩子动态生成页面标题控制不同状态显示不同颜色动态生成验证码按条件搜索和保存搜索条件公私…

Python学习笔记(二十三)面向对象版学员管理系统

Python学习笔记(二十三)面向对象版学员管理系统 一、系统需求 使用面向对象编程思想完成学员管理系统的开发,具体如下: 系统要求:学员数据存储在文件中系统功能:添加学员、删除学员、修改学员信息、查询…

基于C# SQLServer开发学员管理系统

.Net-基于C# SQLServer开发学员管理系统喜科堂中级项目实战 课程简介 本课程手把手讲解基于C#和SQLServer数据库开发的学员信息管理系统,通过课程学习可以熟练掌握数据库应用程序开发核心技能,并且独立开发类似项目。 本课程系统讲解项目所有功能点&am…

java/php/net/python驾校学员管理系统设计

本系统带文档lw万字以上答辩PPT查重 如果这个题目不合适,可以去我上传的资源里面找题目,找不到的话,评论留下题目,或者站内私信我, 有时间看到机会给您发 系统体系结构 架构设计的目的是反映一个结构和其他元素之间的…