【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循环中,最后运行结果如下。
相关推荐
_Kayo_2 分钟前
node.js 学习笔记3 HTTP
笔记·学习
CCCC13101633 小时前
嵌入式学习(day 28)线程
jvm·学习
星星火柴9364 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
小狗爱吃黄桃罐头4 小时前
正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别
linux·驱动开发·学习
艾莉丝努力练剑5 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
武昌库里写JAVA6 小时前
JAVA面试汇总(四)JVM(一)
java·vue.js·spring boot·sql·学习
杜子不疼.6 小时前
《Python学习之字典(一):基础操作与核心用法》
开发语言·python·学习
小幽余生不加糖7 小时前
电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
人工智能·笔记·学习·音视频
..过云雨7 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习
myzzb7 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa