Labview串口通信VISA实现串口收发

文章目录


前言

  • 前面使用过调用 MSComm 控件的方式(Labview串口通信MSComm实现串口收发),即利用 Windows 提供的控件对象,在 LabVIEW 中对该控件的属性和方法进行操作,来实现串口通信。之所以使用 MSComm 控件,是因为比使用 VISA 来实现串口通信要灵活一些,比如可以通过回调的方式,在 PC 的串口 buffer 中数据字节数到达某一设定值时,可以触发注册好的 LabVIEW 回调函数来进行处理,这种方式就很好的避免了在轮询中去读取串口数据了,效率提升是很明显的,特别是在速度和数据吞吐率有略高的要求时。

  • 当然了,使用 VISA 也是可以很简洁的实现串口通信的,其优点就是使用简单,虽然用户体验的简单性往往都会牺牲一些使用上的灵活性。

  • 本文实现通过 LabVIEW 的 VISA 模块实现串口收发通信。


一、什么是 VISA

VISA 是 Virtual Instrument Software Architecture 的简称,它提供了一种标准的、跨平台的通信协议,允许 LabVIEW 与各种不同的设备进行通信,无论是通过 GPIB、串口、USB、以太网或其他接口。VISA 对于测试软件开发者来说是一个可调用的操作函数集,本身并不提供仪器编程能力,它只是一个高层 API,通过调用低层的驱动程序来控制仪器。NI-VISA 的层次结构如下图所示:

二、VISA 驱动下载及安装

1、下载

链接:https://www.ni.com/zh-cn/support/downloads/drivers/download.ni-visa.html#306043

根据所使用的 LabVIEW 发行版本选择对应的 NI-VISA 的版本,我这里用的是 NI LabVIEW 2018 (32位),这里选择的 NI-VISA 版本为 21.0。

查看自述文件可以确定你所下载的 NI-VISA 版本和你所使用的 LabVIEW 是否兼容。

查看自述文件 --> 自述文件和发行说明 --> NI-VISA 21.0 for Windows Readme

2、安装

安安装 VISA 驱动程序非常简单,只需要按照安装向导的提示进行操作即可,安装成功后会提示重启,重启即可。

三、VISA 实现串口收发

官方给我们提供了很多范例方便我们进行开发,我这里要用到的是串行写入和读取两个端口 例程,相关范例路径在:帮助 -> 查找范例 -> 硬件输入与输出 -> 串口-> 串行写入和读取两个端口

1、打开虚拟串口

参考我的上一篇博客:https://blog.csdn.net/qq_41839588/article/details/131936554?spm=1001.2014.3001.5501

我这里虚拟出 COM8 和 COM9 两个端口

2、前面板运行效果

COM8(发)--> COM9(收),在写入字符串输入 "hello world!",运行程序后读取字符串可以看到写入的字符串。

3、程序框图

有兴趣的读者可以试一试串口其他的例程,并根据需求选择适合自己项目开发的方案。


我的qq:2442391036,欢迎交流!


相关推荐
楚Y6同学5 天前
QT之键盘控制虚拟遥控系统开发总结
开发语言·c++·qt·串口通信
LabVIEW开发6 天前
LabVIEW 事件动态注册
labview·labview知识·labview功能·labview程序
LabVIEW开发7 天前
LabVIEW 实现陀螺系数计算
labview·labview程序
LabVIEW开发7 天前
LabVIEW菜单操控
labview·labview知识·labview功能
LabVIEW开发9 天前
LabVIEW多循环架构
labview·labview知识·labview功能·labview程序
LabVIEW开发20 天前
LabVIEW palette编辑VI
labview·labview知识·labview功能
LabVIEW开发20 天前
LabVIEW频谱仪自动校准系统
labview·labview开发案例
棋影25 天前
主流PLC串口自由协议通信标准化
串口通信·plc通信·modbus通信
LabVIEW开发1 个月前
LabVIEW动态调用VI
labview·labview知识·labview功能·labview程序
LabVIEW开发1 个月前
LabVIEW受电弓测试
labview·labview开发案例