LabVIEW技巧系列(一)——事件结构

2015-09-10 10:41:34来源: eefocus 关键字:LabVIEW  技巧系列  事件结构
    事件结构,是LV编程结构的精髓所在。它类似于单片机的中断功能,优点在于不占用CPU资源。比如按键按下串口发送数据,以及设置键盘快捷键等等功能,事件结构比查询结构要节省很多系统资源。下面我介绍一下利用事件结构的关键点,基础的自己去看帮助吧。

1,关于事件结构超时连线的问题:事件结构有一个超时事件的输入,当不连接时代表永不超时。这点要十分注意,因为有时候你的事件就够会和其他结构放在一个while循环里,比如下图:

我们理想的情况是,其他服务程序正常循环运行(小灯闪烁),而鼠标按下后,处理事件结构。但是如果这样写的话,由于事件结构永不超时,while循环只会运行一次,只有当鼠标按键按下后,才会开始第二次循环。这个程序的运行结果是,按一下鼠标,小灯变化一次。

    要解决这个问题有两个办法:一个是给事件结构的延时输入处添加延时时间,比如5ms,这样循环就会5ms运行一次,不会影响其他服务程序的正常运行。二个就是把其他服务程序放到另外一个while循环中,事件结构单独一个循环。个人建议选择第二个方法。

 

2,关于事件结构软触发的问题:前面板有一个按钮,按下后触发很简单,也很常用。不过有时候要涉及到软触发的问题,就是利用程序(而不是前面板的控件)去触发一个事件。先看下面这个例子:



"服务程序"软件改变“软触发”的值,我们的理想目标是,每次改变服务程序的值为真时,标志小灯会改变一次。但是实际程序运行结果是,无论按多少次,小灯都不变。因为直接赋值只能改变变量的值,而不能引起次变量的事件触发。

 

解决办法就是:要软件触发事件,必须对变量右键->创建->属性节点->值(信号)进行赋值,这样才能触发事件结构。例如下图。

(事件结构设置时要把锁定前面板勾掉)程序运行结果:当“服务程序”弹起时,小灯不变,但是事件会一直触发,用高亮模式可以看见,连续两次给“软触发”赋F,事件同样会触发,换句话说,只要赋值,就会触发事件,而不是值改变才会触发。所以在事件结构里加了一个条件结构。当“服务程序”按下时,不停的给“软触发”赋T,事件结构不停运行,小灯闪烁。

 

事件结构是LV的精髓

关键字:LabVIEW  技巧系列  事件结构

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2015/0910/article_13079.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:labview事件结构学习
下一篇:labview循环-移位寄存器妙用

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
LabVIEW
技巧系列
事件结构

小广播

独家专题更多

东芝在线展会——芯科技智社会创未来
东芝在线展会——芯科技智社会创未来
2017东芝PCIM在线展会
2017东芝PCIM在线展会
TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved