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

2015-09-10 10:41:34来源: eefocus
    事件结构,是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
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
LabVIEW
技巧系列
事件结构

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved