labview入门4

一。变量

【局部变量】

1、引言

我们想用一个命令来控制两个while程序

思考一下以下例子是否符合要求?

【例1】

labview入门4

答案是肯定的。

但是,这个程序的实现,是基于while1循环停止后,输出一个真值给while2,也就是说,如果不停止的话,while1会一直循环,while2一直在等待while1停下来那一刻的真值。没有办法达到同步进行的效果。

【例2】

labview入门4

该例子中,我们在两个循环停止命令处添加了‘’文件‘’,方便读写程序,也可以同时控制程序的循环,就像牛的反刍。

缺点:耗费时间长。

【例3】

labview入门4

也有人说,我们可以通过如图连线的方式来控制程序同时运行。

错误:只有while1停止后,while2才可以运行。

labview入门4

这个时候,我们的做法是:给while2程序的暂停命令处添加一个while1的局部变量:

labview入门4

【注意】使用局部变量固然方便,这里,‘布尔’型局部变量比较特殊。

在使用开关的时候,底下一行的控件不可以使用局部变量。

labview入门4

2、局部变量应用

切换到程序框图,右键---->数据通信----->局部变量labview入门4(长这样纸)

我提前创建了两个while循环,点击局部变量的小屋子,会出现两个‘停止按钮’的局部变量【理解为游戏副本】

labview入门4

再创建一个数值输入控件,那么这个房屋又会多一位房客:labview入门4

3、亲自动手操作

我想做一个闪烁灯,用到for循环,用到局部变量,延迟500ms,闪烁10次

labview入门4labview入门4over

这里,会有小伙伴习惯于创建了布尔控件后顺便删除了名字,看起来很清爽

突然会发现,程序报错了:

labview入门4

毕竟房子的主人是有名字的,我们得找到她:点击房子,会出来‘布尔’的字样,选中布尔,我们就可以正常连线了。

 

二、循环数据传输

1.移位寄存器的应用

labview入门4

移位寄存器是成对出现的

labview入门4

初始化程序的初始值是1,1+2=3,3+2输出为5。第二次运行的时候,初始值还是2,所以最终值还是5。

未初始化的初始值默认为0,0+2=2,2+2输出为4,4再进入下一个循环,第二次运行输出结果是8。

labview入门4

【练习1】

labview入门4

 

【练习2】

labview入门4

 

 

尝试做出来这个程序。

超时了,下次补充...