labview编程技巧-----令人无奈的IF ELSE
时间:01-09
来源:互联网
点击:
LABVIEW作为一种编程语言,相对于常规编程语言,有其独特的编程风格.
编程语言都具有顺序,条件转移和循环三种基本结构.LV的IF ELSE常常令人很无奈.
if(condition1)
........
else if (condition2)
........
else if (condition3)
类似与上面的条件结构在其他编程语言中很容易实现,在LV中却是个问题.
1.如果超过三层IF ELSE判断,LV中则很难读懂代码,嵌套太多了
2.LV的IF结构必须通过隧道传递数值,即使这个值有时是根本不需要的.
比如:
if (a==1)
b=2;
else
c=3;
当变量a=1时,令变量b=2,当变量a!=1时,令C=2
但是在LV中,当变量a=1时,在令变量b=2的同时,还必须处理C,而此时我们根本不想对C进行任何操作.同理,当a!=1时,我们也不得不处理b的问题.
有网友提问:
网友答案:
这是个两层的IF ELSE结构,如果数据分成10段那,那上面的判断结构将无法实现了.(另外,他的AOVALUE应该是个输入控件)
比较好的解决方法:
如果是数值类比较,更好的方法是利用公式节点.
编程语言都具有顺序,条件转移和循环三种基本结构.LV的IF ELSE常常令人很无奈.
if(condition1)
........
else if (condition2)
........
else if (condition3)
类似与上面的条件结构在其他编程语言中很容易实现,在LV中却是个问题.
1.如果超过三层IF ELSE判断,LV中则很难读懂代码,嵌套太多了
2.LV的IF结构必须通过隧道传递数值,即使这个值有时是根本不需要的.
比如:
if (a==1)
b=2;
else
c=3;
当变量a=1时,令变量b=2,当变量a!=1时,令C=2
但是在LV中,当变量a=1时,在令变量b=2的同时,还必须处理C,而此时我们根本不想对C进行任何操作.同理,当a!=1时,我们也不得不处理b的问题.
有网友提问:
Hi
I like to do the following statements in LabVIEW,
IF AoValue<=0.1 THEN
AoValue1=(AoValue-0.0060)
ELSEIF (AoValue >0.1) AND (AoValue<0.2) THEN
AoValue1=(AoValue-0.0035)
ENDIF
Pls help with this
Thanks
网友答案:
这是个两层的IF ELSE结构,如果数据分成10段那,那上面的判断结构将无法实现了.(另外,他的AOVALUE应该是个输入控件)
比较好的解决方法:
如果是数值类比较,更好的方法是利用公式节点.
labview编程技巧IFELS 相关文章:
- 频宽、取样速率及奈奎斯特定理(09-14)
- 为什么要进行信号调理?(09-30)
- IEEE802.16-2004 WiMAX物理层操作和测量(09-16)
- 为任意波形发生器增加价值(10-27)
- 基于PCI 总线的高速数据采集系统(09-30)
- 泰克全新VM6000视频测试仪助力数字电视等产品测试 (10-06)