labview编程笔记之条件结构

article/2025/7/6 4:38:12

CSDN话题挑战赛第2期
参赛话题:学习笔记

学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐,不如众乐乐,把知识讲给更多的人听,何乐而不为呢?

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

最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是美国国家仪器公司(NI)的创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于G语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。
下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。

编程知识点–labview编程笔记之条件结构

条件结构,也称分支结构或选择结构。在C语言中,选择结构有两种语句可以实现,分别是if语句和switch语句[7]。if语句只有两个分支可以选择,而switch语句则是多分支选择语句。当然,利用if语句的嵌套,也可以实现多分支结构,但相比switch语句会显得烦琐。LabVIEW中条件结构的功能与C语言中if、switch语句的功能相类似。

在LabVIEW中,如何创建一个条件结构呢?具体方法是:在“函数”选板→“编程”→“结构”子选板上,选中一个条件结构,将其拖曳到程序框图面板上,创建好的条件结构如图所示。

在这里插入图片描述

其中,“条件选择器”的输入数据,可以是布尔、整数、字符串、枚举类型或错误簇;而“选择器标签”则用于决定下方显示哪个条件分支下的框图,具体地,可以通过“选择器标签”上的按钮来选择当前显示哪个分支。

条件选择器为布尔型
当条件选择器上接入的是布尔量时,条件结构的功能相当于C语言中的if语句,即只有两个分支(真或假),这也是条件结构的默认情况。图显示的是当条件选择器接入布尔量时的情况,且显示的是真分支下的框图。

件选择器为非布尔型
当条件选择器接入的是非布尔量(整型数值、字符串或枚举型)时,条件结构的功能就相当于C语言中的switch语句,即可以有多个分支。

在这里插入图片描述

图所示的条件结构,它的条件选择器接入的是整型数值,且共有4个分支,第一个分支是小于或等于-1的数;第二个分支是等于1、3和4;第三个分支是等于6以及默认的情况;第四个分支是大于或等于7的数。

当条件选择器接入的是非布尔量,使用条件结构时需要注意:要么在条件选择器标签中列出所有可能的情况;要么必须给出一种缺省(默认)的情况。如上图所示,就存在一个默认分支,这是因为4个分支并未将所有可能的数据都覆盖掉。

那么,如何为条件结构添加新的分支呢?具体操作如下:将鼠标放在条件结构边框上,右击,弹出其快捷菜单,选择“在后面添加分支”或“在前面添加分支”,即可完成新分支的添加。常见问题4:设置条件结构选择器接入数据的注意事项。

条件结构选择器默认接入的数据为布尔型的,如图1所示,所以其上端的选择器标签默认的是真或假。当在条件选择器接入一个数值型数据时,选择器标签会自动变成数值型,此条件下,可以根据实际需求设置不同的分支。初学者容易犯的一个错误是,在还没有为条件选择器接入具体输入的条件下,就直接去修改上端选择器标签的数据类型,如此操作会导致LabVIEW报错。

在LabVIEW中,条件结构内外之间的数据交换是通过隧道完成的。向条件结构内引入连线或从其内部向外引出连线,均会在其边框上生成隧道;其中,左边边框上的是输入隧道,右边边框上的是输出隧道。输入隧道在每一个分支中都可以使用;而输出隧道必须从每一个分支都得到明确的输入值,否则VI无法运行。如图下所示,输出隧道呈空心状态,这表明,这个条件结构中有的分支没有为输出隧道赋值,此条件下,LabVIEW就会报错,具体表现为运行按钮将呈断裂状态。
在这里插入图片描述

如图所示,输出隧道呈实心状态,则表明所有的分支都已为输出隧道赋了值。在这里插入图片描述


http://chatgpt.dhexx.cn/article/bn1AOVdA.shtml

相关文章

LabVIEW编程LabVIEW开发在LabVIEW中复用现有代码

LabVIEW编程LabVIEW开发在LabVIEW中复用现有代码 使用LabVIEW,我们可以将多种编程方法与图形化数据流结合到单个应用程序中。基于这种灵活性,可以选择所需的工具来创建待测设备(DUT)的控制、配置或测量库。LabVIEW可将多种语言(如.m、C、Pyth…

LabVIEW编程LabVIEW开发使用LabVIEW访问Microsoft Access

LabVIEW编程LabVIEW开发使用LabVIEW访问Microsoft Access Microsoft Access是Microsoft提供的常见数据库工具包。该KB提供基本操作,包括通过LabVIEW创建和连接数据库,插入,删除,更新和选择记录,以便新用户更好地了解。…

【LabVIEW编程——循环读取文件夹及文件】

LabVIEW编程——循环读取文件夹及文件 小树不修不直溜,人不修他哏啾啾!老铁们,大家好!好久不见,甚是想念。全民抗疫的这两年里,大家都生活不易,病毒依旧强势,家人们,防范…

labview编程笔记之循环结构

CSDN话题挑战赛第2期 参赛话题:学习笔记 循环结构 While循环 在LabVIEW中如何创建一个While循环呢?方法很简单。如图1所示,首先,在“函数”选板→“编程”→“结构”子选板上,选中While循环,将它拖曳到程…

【LabVIEW视觉懒人教程】1.1labview编程方式介绍

打开labview界面 labview的文件后缀名是.vi,单个vi包含前面板和程序框图,前面板是程序运行时显示给用户的界面,程序框图里面是程序的代码。 前面板空白处鼠标右键,弹出控件选板。 程序框图空白处右键,弹出函数选板。 …

labview混合编程学习

由于开发需要,上位机需要采用labview设计,但是之前研究算法主要靠matlab或者python,因此考虑采用labview混合编程的方式。 目前,界面设计采用Labview,而算法部分采用Matlab或者python,即采用混合编程的方式…

了解LabVIEW编程

LabVIEW通其他编程语言和软件一样,安装容易,容易使用。 LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文…

LabVIEW编程规范

LabVIEW编程规范 编写LabVIEW程序应该遵循哪些规范,使得编写的程序在运行效率、可读性和可维护性方面得到显著提高? 和本文编程语言类似,在LabVIEW中设计程序框图时也应该养成良好的编程习惯,使得设计出的图形化程序外观美观、便…

LabVIEW编程入门笔记

CSDN话题挑战赛第2期 参赛话题:学习笔记 学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐&a…

LabVIEW学习入门(二)

一、Labview编程特点 基本无需code,是图形编程,选择部件,然后将其连接起来并行性运行,而非顺序执行基于数据流运行 二、Labview编程特点举例说明 实现顺序执行可借助“程序框图”页的"Programming"中的"Structu…

LabVIEW编程基础:事件结构框架编程

LabVIEW又称为G语言,简单易学、形象直观,采用图形化的编程方式,是专为测试、测量和控制应用而设计的系统工程软件。 前面几篇文章依次讲解了LabVIEW中顺序顺序结构、条件结构及循环结构的编程方法,下面再讲一种与软件界面响应有关…

LabVIEW编程基础:条件结构编程

目录 一、条件结构框架特点 二、示例1:布尔型的条件输入 三、示例1运行效果 四、示例2:数值型的条件输入 五、示例3:枚举型的条件输入 六、示例3:运行效果 七、示例4:字符串型的条件输入 八、示例4&#xff1a…

啊这!终于不用敲代码了?Labview牛逼!带你轻松入门Labview~

文章目录 一、Labview的三大特征1、图形编程2、并行性运行3、基于数据流 二、Labview编程小tips1、快捷键!2、善于利用Labview中的“即使帮助”3、运行之后某个控件或函数部分闪了?!——出错了!4、我喜欢有代码洁癖的程序员&#…

noip201506 Message 信息传递

试题描述: 有 n 个同学(编号为 1 到 n )正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为 i 的同学的信息传递对象是编号为 T_i 的同学。游戏开始时,每人都只知道自己的生日…

Codevs 4511 信息传递

题目描述 Description 有个同学(编号为 1 到)正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为的同学的信息传递对象是编号为的同学。游戏开始时,每人都只知道自己的生日。之后每一轮中…

消息的传递

我们的郭嘉大大在曹操这过得逍遥自在,但是有一天曹操给了他一个任务,在建邺城内有 N 个袁绍的奸细,将他们从 1 到 N 进行编号,同时他们之间存在一种传递关系,即若C{i,j}1,则奸细 i 能将消息直接传递给奸细 …

简单知识——跨页面信息传递

背景 一个简单的数据查询功能,列表页面有“查看详情”按钮,跳转详情页面时列表的一条记录信息需要传递到详情页面;而详情页面有“返回”按钮,返回的同时也需要将原列表的查询条件回显。 跳转方式直接是 window.location.href&am…

信息传递的多样化的挑战

信息传递的障碍,是造成竞争被动的重要原因。因此,要使有用的信息得以正确传递,必须克服这种传递障碍。 方法之一是减少组织机构层次和信息传递的环节,尽量做到信息的直接贯通。 方法之二是采取双向传递方式。传统的传递往往是高一…

java实现信息传递

在过去,我们无数次实现了代码的本机运行,一行行的代码在我们的屏幕上飞舞,最终形成种种不同的结果,但是,这些都止于自己的计算机上,在这个万物互联的世界里,通信,是不可缺少的一环&a…

【PyG入门学习】三:信息传递机制

1.理论基础 将普通的卷积过程推广到非规则数据领域一般是通过邻域聚合或者信息传递机制。 x i ( k − 1 ) ∈ R F x^{(k-1)}_i∈R^F xi(k−1)​∈RF表示在第k-1层节点i的节点特征, e j , i ∈ R D e_{j,i}∈R^D ej,i​∈RD表示从节点j到节点i的边的特征&#xff08…