第四章结构与属性控制_第1页
第四章结构与属性控制_第2页
第四章结构与属性控制_第3页
第四章结构与属性控制_第4页
第四章结构与属性控制_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章结构与属性控制第1页,共52页,2023年,2月20日,星期二6.1For循环

For循环是LabVIEW最基本的结构之一,它执行指定次数的循环。相当于C语言的For循环:

for(inti=0;i<N;i++)

{

}

LabVIEW中For循环可从框图功能模板Function→Structure子模板中创建。第2页,共52页,2023年,2月20日,星期二→第3页,共52页,2023年,2月20日,星期二6.1.1For循环的组成

最基本的For循环由:循环框架、迭代端口i和总计数端口构成。

任务1:判断该程序运行后的结果,设计该循环结构程序,验证结果。第4页,共52页,2023年,2月20日,星期二

此外,LabVIEW在For循环中引入移位寄存器(ShiftRegister)和框架通道(Channel)两个独具特色的新概念。→第5页,共52页,2023年,2月20日,星期二数据在移位寄存器中的流动过程:第6页,共52页,2023年,2月20日,星期二移位寄存器的特点:

(1)移位寄存器(左右)是For循环的数据缓冲区。

(2)可以增加和减少移位寄存器的个数。

(3)左右两侧移位寄存器的数据类型必须一致。

任务2:计算1+2+3+…100的和。第7页,共52页,2023年,2月20日,星期二6.1.2For循环的使用任务4:求0到99之间所有偶数的和.任务3:求N!.第8页,共52页,2023年,2月20日,星期二6.1.3For循环的特点

1.一旦For循环开始执行,就必须执行完相应次数循环后才能终止,不可中途跳转出来。

2.具有自动索引功能

例:求一维数组所有元素的和。第9页,共52页,2023年,2月20日,星期二

当For循环计数端口给定值与两数组长度不等时,For循环自动按最小循环次数执行。第10页,共52页,2023年,2月20日,星期二6.2While循环

当循环次数不能预先确定时,就需要用到While循环。它也是LabVIEW最基本的结构之一。相当于C语言的While循环和do循环:

While(条件)

{

}

Do

{

}

LabVIEW中While循环可从框图功能模板Function→Structure子模板中创建。第11页,共52页,2023年,2月20日,星期二→第12页,共52页,2023年,2月20日,星期二6.2.1While循环的组成

最基本的While循环由:循环框架、迭代端口i和条件端口构成。

条件端口控制循环是否执行,每次循环结束后,判断条件端口的值,若为False,停止执行循环;若为True,则继续执行下一次循环。不给条件端口赋值,则While循环只执行一次。

此外,LabVIEW在While循环中也可引入移位寄存器(ShiftRegister)和框架通道(Channel),与For循环中用法完全相同。第13页,共52页,2023年,2月20日,星期二6.2.2While循环的使用

任务5摄氏温度与华氏温度的动态转化任务6求N!.第14页,共52页,2023年,2月20日,星期二6.2.3While循环的特点

1.具有自动索引功能

例:显示一维数组所有元素。2.停止条件可修改,避免死循环。第15页,共52页,2023年,2月20日,星期二6.3顺序结构

在代码式的传统编程语言中,默认的情况是,程序语句按照排列顺序执行,称为控制流程;但LabVIEW中不同,它是一种图形化的数据流式编程语言,具有并发、多任务的特点。第16页,共52页,2023年,2月20日,星期二6.3.1顺序结构的组成

最基本的顺序结构由:顺序框架、框图标识符和递增/递减按钮构成。

LabVIEW在顺序框架中引入了本地结果(SequenceLocal)的概念,通过本地结果就可以在顺序框架中向后传递数据

顺序框架中也存在框架通道,但通道没有EnableIndexing和DisenableIndexing属性第17页,共52页,2023年,2月20日,星期二6.3.2顺序结构的使用

任务7用For循环产生一个2000点的随机波形,并计算所用时间.第18页,共52页,2023年,2月20日,星期二前面板输出:第19页,共52页,2023年,2月20日,星期二6.3.3顺序结构的特点

1.LabVIEW在顺序框架中引入了局部变量(SequenceLocal)的概念,通过本地结果就可以在顺序框架中向后传递数据。

2.顺序结构可以提高某类程序的运行效率,但不可滥用,有些情况下数据流机制的程序效率会更高。第20页,共52页,2023年,2月20日,星期二6.4Case循环(条件循环)

Case结构也是LabVIEW最基本的结构之一。相当于C语言的switch语句:

switch(表达式)

{

case1:语句1;

case2:语句2;

casen:语句n;

default:语句n+1;

}

第21页,共52页,2023年,2月20日,星期二→LabVIEW中Case循环可从框图功能模板Function→Structure子模板中创建。第22页,共52页,2023年,2月20日,星期二6.4.1Case结构的组成

最基本的Case结构由:Case框架、选择端口(分支选择器)、选择器标签和递增/递减按钮构成。

选择端口相当于C语言的Switch语句中的“表达式”,框图标识符相当于“表达式n”。

选择端口的外部控制条件的数据类型有3种:布尔型、数字型和字符串型。

控制条件的数据类型必须与框图标识符中数据类型一致。

1.控制条件为布尔类型,框图标识符取值True和False;

2.控制条件为数字类型,框图标识符取值0,1,2,…;

3.控制条件为字符串类型,框图标识符取值“条件n”;第23页,共52页,2023年,2月20日,星期二6.4.2Case结构的使用任务8求一个数的平方根,若该数>=0,输出开方结果;否则弹出对话框,报告错误,同时输出-99999.00.第24页,共52页,2023年,2月20日,星期二6.4.3Case结构的特点

1.LabVIEW的Case结构简洁明了,不但相当于Switch语句,还可以实现ifelse语句功能。

2.Case框架中也存在框架通道,但通道没有EnableIndexing和DisenableIndexing属性。

3.每个子框架必须连接一个数据,否则程序出错。第25页,共52页,2023年,2月20日,星期二6.5事件结构

6.5.1事件驱动的概念

LabVIEW是一种数据流的编程环境,由数据流决定程序中节点的执行顺序。但在编程中可以设置事件,对数据流进行干预。这些事件是用户在前面板的互动操作,如:点击鼠标事件、键盘事件等。

在事件驱动程序中,首先是等待事件,当事件发生时执行指定事件的程序代码,对事件进行响应,然后再回到等待状态。

使用事件设置,当用户改变一个前面板的值、关闭前面板、退出程序等,都可以被程序及时捕捉到。第26页,共52页,2023年,2月20日,星期二6.5.2事件结构的建立

LabVIEW中Event结构可从框图功能模板Function→Structure子模板中创建,如下。

超时端口Timeout连接一个数值指定等待事件的毫秒数。默认值为-1,即无限等待。

通过事件端口可以访问事件的数据值。

事件选择标签显示当前响应事件的子图形代码框。第27页,共52页,2023年,2月20日,星期二6.5.3事件结构的设置

在事件结构边框右键弹出菜单上选择CaseEventCase添加子图形代码框。

在EditEventsHandledbyThisCase可以为子图形代码框设置事件。第28页,共52页,2023年,2月20日,星期二

在EditEventsHandledbyThisCase设置代码框设置事件。第29页,共52页,2023年,2月20日,星期二

在EditEventsHandledbyThisCase设置代码框设置事件。

例:事件结构的使用。第30页,共52页,2023年,2月20日,星期二第31页,共52页,2023年,2月20日,星期二6.6公式节点

假如程序中有一些复杂的数学计算,编写图形代码是比较麻烦的。如x>0,y=mx3+3nx2-x+1;x<=0,y=-2mx3+x-5。第32页,共52页,2023年,2月20日,星期二第33页,共52页,2023年,2月20日,星期二→6.6.1公式节点的创建

在功能模板Function→Structure子模板中选择FormulaNode。第34页,共52页,2023年,2月20日,星期二→

添加输入输出端口。→第35页,共52页,2023年,2月20日,星期二6.6.2公式节点的使用

任务9求y=3x+100第36页,共52页,2023年,2月20日,星期二任务10x>0,y=mx3+3nx2-x+1;

x<=0,y=-2mx3+x-5。

应用选择结构<逻辑表达式>?<表达式1>:<表达式2>;第37页,共52页,2023年,2月20日,星期二6.6.3公式节点的特点

1.LabVIEW的公式节点的使用简化计算公式的图形化编程,提高了效率。

2.公式节点框架中出现的所有变量,必须有一个对应的输入输出端口,注意输入输出端口是可设置的。

3.公式节点框架内每个公式后以分号”;”结束。第38页,共52页,2023年,2月20日,星期二6.7属性节点

前面板对象属性是指前面板上控件的外观和功能特征,如显示的颜色、可见性、闪烁、位置、比例等。

6.7.1属性节点的创建

简便的方法是在前面板对象或其端口的右键弹出菜单中选择Creat→PropertyNode,如下图:第39页,共52页,2023年,2月20日,星期二第40页,共52页,2023年,2月20日,星期二

属性类型的选择,单击属性节点,在弹出菜单中的Property下,列出了对象的所有属性,如下图:→

增加多种属性,方法1:拖动;

方法2:AddElement第41页,共52页,2023年,2月20日,星期二6.7.2属性节点的使用

VisibleAttribute

控制前面板对象是否可见,数据类型为布尔型。当为True时,可见;当为False时,不可见第42页,共52页,2023年,2月20日,星期二②DisableAttribute

控制前面板对象是否可用,数据类型为整型。当其值为0时,可用;当其值为1时,不可用;当其值为2时,不可用,且变暗。第43页,共52页,2023年,2月20日,星期二③KeyFocusAttribute

控制前面板对象是否处于焦点状态,数据类型为布尔型。当为True时,处于焦点状态;当为False时,失去焦点状态。第44页,共52页,2023年,2月20日,星期二④BlinkingAttribute

控制前面板对象是否闪烁,数据类型为布尔型。当为True时,处于闪烁状态;当为False时,处于正常状态。第45页,共52页,2023年,2月20日,星期二⑤PositionAttribute

设置控制前面板对象在前面板中的位置,数据类型为簇,均为整型。第46页,共52页,2023年,2月20日,星期二⑥BoundsAttribute(ReadOnly)

获得控制前面板中对象的大小,包括高和宽,数据类型为簇,均为整型。第47页,共52页,2023年,2月20日,星期二6.6.3属性节点的特点

1.与本地变量类似,属性节点也有Read和Write两种属性。

2.在编程中会经常应用到属性节点,特别是对于Graph和Chart波形控件,应用属性节点能添加不少实用功能。第48页,共52页,2023年,2月20日,星期二

实验三

1.产生100个0.0~100.0的随机数,求其最小值、最大值、平均值,并将数据在Graph中显示。

2.产生0.0~100.0的随机

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论