自学内容网 自学内容网

【LabVIEW学习篇 - 3】:程序结构——顺序结构、for循环、while循环

顺序结构

LabVIEW中的顺序结构是一种常用的控制结构,用于按顺序执行程序的不同部分。顺序结构在程序中按照从左到右的顺序依次执行各个子结构,类似于传统的文本编程语言中的顺序执行。

案例一

案例一:基于LabVIEW学习篇 - 2中,天然并行运行部分列举的两个加减法程序,使用平铺式顺序结构,将以上这两个程序从并行运行变为顺序执行,加法执行后延时5s执行减法。

  1. 在程序框图中,鼠标右键,在结构模块中选择平铺式顺序结构,按住鼠标左键,拉开合适的大小即可。在这里插入图片描述

  2. 选中平铺式顺序结构,然后鼠标右键,选择在后面添加帧,添加两帧即可。
    在这里插入图片描述

  3. 将加法程序和减法程序分别放在平铺式顺序结构的左右两段,在中间帧放入延时模块,即鼠标右键,在定时模块选择等待,在这个控件的连接端口处点击鼠标右键,点击创建常量,即可输入延时时间(这样较为快捷)。
    在这里插入图片描述
    Tips:如上图所示,若想整理程序,可选中想要整理的部分,点击右上角的整理程序的按钮即可。

  4. 运行程序,即可看到加法执行5s后减法才执行。
    在这里插入图片描述
    在这里插入图片描述

案例二

案例二:使用顺序结构,实现圆形指示灯的亮-灭-亮,中间间隔为1s。

  1. 在前面板中,鼠标右键,在布尔模块中选择圆形指示灯
    在这里插入图片描述

  2. 在程序框图中放置平铺式顺序结构,并在后面添加帧,将延时设置好。
    在这里插入图片描述

  3. 如何将圆形指示灯点亮呢?圆形指示灯只接收布尔值,即真或假,真-亮,假-灭。在圆形指示灯控件的连接部分,点击鼠标右键,选择常量,并点击该常量,即可进行TF的切换。
    在这里插入图片描述

  4. 如何在后面的其他帧中修改前面的圆形指示灯的呢?选中圆形指示灯,点击鼠标右键,选择创建-属性节点-值,接着将值放入到对应的帧中,再选中其值,点击鼠标右键,选择全部转为写入,接着在其连接处,点击鼠标右键,选择创建常量,并设置好常量即可。
    在这里插入图片描述

  5. 最后一帧,也是同第四步的操作相同,若想快捷,也可复制粘贴。
    在这里插入图片描述

  6. 最后运行,即可看到圆形指示灯亮-灭-亮。
    在这里插入图片描述

Tips:若平铺式顺序结构过长,可选中该控件,鼠标右键,选择替换为层叠式顺序,即出现另一种展现该结构的方式。如下图所示。
在这里插入图片描述

for循环

在LabVIEW中,for循环是一种常用的结构,用于重复执行一段程序代码指定的次数或者基于一个数组的元素进行迭代。

案例:设置两个for循环,循环100次数设置为100次,第一个for循环实现圆形指示灯的亮灭,第二个for循环使用波形图表显示随机数,设置时间间隔为50ms。

  1. 在程序框图中鼠标右键,在结构部分选择for循环,放置两个for循环,如下图所示。
    N为循环次数,i为for循环当前循环的次数。鼠标移动到N的位置,鼠标右键,选择创建常量,设置为100。鼠标移动到i的位置,鼠标右键,选择创建显示控件,即可看到前面板中出现显示控件。
    在这里插入图片描述
  2. 实现第一个for循环,设置圆形指示灯亮灭。
    在这里插入图片描述
  3. 实现第二个for循环,在前面板,鼠标右键,在图形部分选择波形图表,在程序框图中,鼠标右键,在数值部分选择随机数(0-1),将随机数(0-1)控件和波形图标连接,并设置延时为50ms。
    在这里插入图片描述
  4. 运行结果如下图所示。(注意:for循环是从0开始)
    在这里插入图片描述

while循环

while循环是一种常见的控制结构,用于根据特定条件重复执行程序的一部分。
条件控制:while循环根据一个逻辑条件的真假来决定是否执行循环体内的代码。只有当条件为假时,循环体才会重复执行。

  • 如下图所示为while循环,i为当前循环的次数,右下角的红色圆表示条件为真时停止循环,为假时开始循环。
    在这里插入图片描述
    在这里插入图片描述
  • 单击该红色圆,即变为空心的圆,表示条件为真时开始循环,条件为假时停止循环。
    在这里插入图片描述

案例:在while循环中实现圆形指示灯的亮灭,时间间隔为50ms。

  1. 在程序框图中,鼠标右键,在结构模块选择while循环。在i处设置显示控件,在红色圆处点击鼠标右键,选择创建常量,设置为F
    在这里插入图片描述
  2. 使用平铺式顺序结构,实现圆形指示灯的亮灭,并放入while循环中,最后运行结果如下。
    在这里插入图片描述

原文地址:https://blog.csdn.net/Oh_Python/article/details/140223566

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!