labview控制程序流程——labview事件结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
labview控制程序流程——labview事件结构
1 事件结构及它的图形化表示法事件被用来通知用户有异步活动发生。图
形化语言的事件响应包括:用户界面事件、外部I/O 事件和程序其它部分的事件。对事件的处理程序也被称为:事件驱动程序。事件驱动程序可以分为若干
个分支,每个分支处理不同的事件响应。所以对事件的响应结果也可以控制程
序的流程。事件驱动机制来自于可视化的操系统,可视化操作系统对用户事件
提供了简洁、有效的响应方式,最常见的事件来自于鼠标和键盘。虚拟仪器借
助于操作系统的事件处理机制实现了图形化语言的事件响应能力。在没有引入
事件结构之前,LabVIEW 是借助于轮询的方式来查询用户操作,由于轮询的方
式会占用一定的CPU 资源,甚至可能遗漏事件,所以这种处理方式并非理想。事件结构的出现避免了对CPU 资源的占用,同时也避免了事件的遗漏。事件
结构在函数选板》编程》结构子选板中可以找到,并可以将其直接拖拽到程序
框图中,图形化表示的事件结构,参见下图。图 1 图形化的事件结构与Case 结构和循环结构类似,事件结构也包含了一个主框架,这个框架内将用来放置
事件处理的事件驱动程序代码。如果事件处理任务众多,会有众多事件分支存在,在结构上类似Case 的多帧结构(选择器标签)。当在程序框图上拖放一个
事件结构时,我们只能看到上图所示的一帧已经预先注册的超时事件(Timeout),超时事件分支。它具有定时延迟的基本功能(不包括While 循环),参见下图。图 2 具有定时延迟的基本功能当然也可以采用另一种表示方法,参
见下图。图 3 利用事件结构内部节点获得中止时间通过这个例子也好理解内部
节点中时间的含义(是事件响应的停止时间)。超时事件超时事件是一种特殊
的事件,当然也可以看成是默认的事件分支。如果存在其它事件源时,超时事
件完全可以被忽略或取消。看下面一个例子。图 4 仅有的两个事件之一超时事