LabVIEW虚拟仪器程序设计及应用 教学课件 作者 吴成东 孙秋野 盛科 第4章 LabVIEW的循环与结构.ppt
文本预览下载声明
第4章 LabVIEW的循环与结构 LabVIEW中除了拥有C语言中所有的程序结构外,还有一些特殊的程序结构,如事件结构、公式节点等,通过这些可以方便快捷地实现任何复杂的程序结构。 LabVIEW中的结构放置在程序框图中,其外形一般是一个大小可以缩放的边框,当它与其他节点的连线有数据传递时,边框内的一段代码将反复执行或有条件执行或按某一定的顺序执行。结构内的该段代码则被称为子框图。 4.1 For循环 4.1.1 For循环的组成 LabVIEW中的循环与结构位于程序框图的“函数”选板下的“结构”子选板中,如图4-1所示。 找到For循环后,用鼠标左键单击For循环后会发现鼠标箭头变成一个表示For循环的小图标,此时用户可在程序框图上用鼠标拖放一个任意大小和位置的For循环边框,如图4-2所示。 For循环相当于C语言中的下列程序代码: for(i=0;iN;i++) { } 最基本的For循环由循环框架、总数接线端(输入端)、计数接线端(输出端)组成。 与其他语言相比,LabVIEW中的For循环除具有一般For循环共有的特点外,还具有一般For循环没有的独特之处。 LabVIEW中没有类似与其他编成语言中的goto之类的转移的语句,一旦确立了For循环执行的次数并开始执行后,只有达到输入的循环次数才能终止其运行。如果确实要跳出此循环,可以用While循环来代替For循环。 4.1.2 简单For循环应用示例 4.1.3 自动索引在For循环内的应用 自动索引的功能是使循环框外面的数组成员逐个进入循环框内,或使循环框内的数据累加成一个数组输出到循环框外面。 For循环的索引可通过鼠标右键单击循环边框的数据通道来启动。 尽管For循环和While循环都支持自动索引功能,但其主要区别在于:For循环的数组默认为能自动索引,如不需要索引,可在数组进入循环的通道上单击鼠标右键弹出快捷菜单选择“禁用索引”选项;而While循环中的数组默认为不能自动索引,如果需要索引,可在循环的通道上单击鼠标右键弹出快捷菜单选择“启用索引”选项。另外,在创建二维数组时一般使用For循环而不使用While循环。 4.1.4 移位寄存器在For循环内的应用 移位寄存器是LabVIEW的循环结构中的一个附加对象,其功能是将当前循环完成的某个数据传递给下一个循环开始。 一般来说,移位寄存器可以存储任何类型的数据,但是连接在同一个寄存器两个端子上的数据必须是同一类型的。移位寄存器的类型与第一个连接到其端子之一的对象数据的类型相同。 4.1.5 反馈节点在For循环内的应用 和移位寄存器一样,反馈节点也是用来实现数据在前后两次循环中的传递。但与移位寄存器相比,使用反馈节点有时能让程序更加简洁易懂。 循环中一旦连线构成反馈,就会自动出现反馈节点的符号。反馈节点符号由两部分构成,分别为初始化端子和反馈节点箭头。 初始化端子 既可位于For循环框图内,也可位于For循环框图外,默认为位于For循环框图内。 反馈节点箭头 表示连线上的数据流动方向,它可以是正向的,也可以是反向的。 4.2 While循环 4.2.1 While循环的组成 在如图4-1所示的界面中找到While循环后,用鼠标左键单击While循环后会发现鼠标箭头变成一个表示While循环的小图标,此时用户可在程序框图上用鼠标拖放一个任意大小和位置的While循环边框,如图4-8所示。 最基本的While循环由循环框架、条件接线端(输入端)和计数接线端(输出端)组成。 与For循环的计数接线端一样,While的计数接线端也是输出循环已执行次数的数字输出端子。While的条件接线端是一个布尔变量,需要输入一个布尔值。 条件接线端用于控制循环是否继续执行时,有两种使用状态: 默认状态的条件接线端属性为“真(T)时停止”,此时的图标是一个方框圈住的实心的红色圆点,如图4-8右下角所示,这表示当条件为真时循环停止。 当在条件接线端图标上单击鼠标右键选择“真(T)时继续”,则图标变成如图4-9所示,此时表示当条件为真时循环继续。当每一次循环结束时,条件端口检测通过数据连线输入的布尔值和其使用状态决定是否继续执行循
显示全部