LabVIEW编程语法学习笔记之全局变量

本文介绍了在使用LabVIEW进行编程时全局变量的应用方法及注意事项,包括如何创建、管理和使用全局变量来实现在不同VI之间的数据传递。

优快云话题挑战赛第2期
参赛话题:学习笔记

博客写作背景----项目中解决的问题

最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。

下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。

编程知识点–编程语法–做题思路

全局变量与局部变量不同,其作用范围不仅限于当前VI,而是在整个项目中都有效。一个或多个全局变量可按一种特殊形式存放在单独的VI中,该种VI没有框图,只有前面板,仍以.vi为后缀存储,其地位相当于一个特殊的VI,因此可用于在不同VI之间传递数据。

创建一个全局变量的步骤如下: 在函数选板中选择“编程→结构→全局变量”,创建一个空的全局变量,此时中间为问号。

双击该全局变量,打开对应的前面板,放入需要的任意类型变量,也可以从别的VI前面板上复制需要的类型变量。 保存该全局变量为一个VI文件。

如果需要为一个已有的全局变量VI文件中添加新的其他全局变量,只需直接双击打开该文件前面板并放入或者复制需要的类型变量,并保存即可。

如果要在框图中添加已有的全局变量,直接从函数选板中选择“选择VI…”添加存储了该全局变量的VI文件即可。如果要将一个全局变量改为在同一文件中存储的其他全局变量,可单击全局变量的中心,从弹出的菜单中进行选择。

与局部变量类似,一个全局变量也只能严格地属于“读取”或“写入”状态中的一种,同样可以通过鼠标右键菜单选择相应项来切换。

在实际项目中,如果全局变量的个数不多,可以放在同一个VI文件中以便管理,如果全局变量数量种类繁多,建议可以按照功能相似性分为几大类,分别存储在几个VI文件中,这些VI文件建议以“global_”或“g_”作为前缀命名,以便与普通VI文件区分使用。

全局变量常用于在两个或多个VI之间传递信息和数据。与局部变量类似,同样也不可滥用全局变量,否则会影响数据流编程方式或者降低程序性能。条件许可的情况下,应该尽可能使用输入输出参数在各个子VI之间传递数据,即使使用全局变量,也应当考虑尽量使用对内存占用量小的变量。

注:利用局部变量,会使VI的编写更加灵活。但是,在实际VI的编写过程中,应该慎用局部变量。这是因为:①每一个局部变量都是一份数据复制,使用过多,就会占用更多内存;②过多使用局部变量和全局变量,会使VI的可读性变差,有可能致使编程错误不易被发现;③在多线程并行运行的VI中,局部变量可能引起竞态条件。

在这里插入图片描述
在实际中,经常要实现这样的功能,即VI中有两个While循环,需要用同一个控制开关让它们同时停下来。这个功能该如何实现呢?同样,也可以利用局部变量来完成。为此编写的VI如下图所示,其中,有两个While循环,在第一个While循环中,将循环计数端子中的值赋给显示控件“循环1里的值”;在第二个While循环中,将循环计数端子中的值乘以2,并赋给显示控件“循环2里的值”;每个While循环内都调用了一个定时函数,且均延时1s的时间。在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr Robot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值