labview不同VI之间传递数据的方法有全局变量、共享变量、队列、功能性全局变量等。在这儿介绍一下功能性全局变量及其简单用法。
labview有个很强大的功能,移位寄存器,可以把上一次的数据暂存到这个移位寄存器里,需要的时候再拿出来。功能性全局变量一般就是放置一个只执行一次的while循环,添加移位寄存器,一个条件结构,根据不同的条件构建不同的功能(初始化、读、写)。while循环左边的移位寄存器存储的是上一次写入的数据,右边的移位寄存器用于写入本次的数据。简单来说,右边存,左边读。鼠标移至while循环边框,右键点击添加移位寄存器即可创建。
这是一个简单的利用移位寄存器累加,当运行这个程序时,先初始化初始值为0,0从左边移位寄存器传出来,加1后存到右边寄存器,所以右边寄存器里是1,然后1从左边寄存器读出来,加1变成2存进去......每500ms执行一次。
现在知道了移位寄存器的工作原理,利用移位寄存器写一个可以在不同VI存储数据,读取数据的FGV。
1、放置一个while循环,停止条件端给一个真常量;放置一个条件结构,放置一个枚举常量,编辑项为初始化,写入,读取。
2、放置一个簇,簇里放置你要读写的数据,转化为严格自定义类型。然后选择簇按住Ctrl拖动一个出来,转化为显示控件。
3、初始化
直接右键点击创建常量即可。
4、写入
5、读取
6、制作子VI
我常用来在不同VI之间传递数据,根据自己的需要进行拓展。
利用FGV在不同VI之间传递数据