Labview事件 - 与正在运行的循环并行执行

时间:2017-05-09 12:28:42

标签: events labview

我试图做一些非常简单的事情:

  • 确定按钮总和a + b并显示在c
  • 循环切换按钮控制无限循环

enter image description here

选项1 - 循环外部事件 enter image description here

选项2 - 循环内部事件 enter image description here

我只是希望能够保持循环运行并且OK按钮同时工作,如何在Labview"生活方式中实现这个简单的任务"。

结果:

  • Op 1 - 外部事件:OK点击后发生一个循环,如果循环正在运行,OK仅在第一次起作用
  • 操作2 - 内部事件:按钮确定无效

4 个答案:

答案 0 :(得分:2)

你不能。您需要两个单独的while循环,一个具有计数功能,但不要使用'循环'变量作为停止条件,使循环变量控制计数条件。 在另一个while循环中,您将拥有自己的事件代码。 您唯一需要担心的是从事件代码中停止第一个while循环。

答案 1 :(得分:1)

以下是使用主/从配置的方法。所有用户事件都在主服务器中处理,计数在从服务器中处理。循环可以重新启动,停止适用于两个循环。

The main code to run

要停止使用不同事件的代码,如果循环条件为假,则不要在从属循环中执行任何操作。这里没有显示,但是条件循环也有它自己的事件结构来重置计数器,如果需要的话。

The stopping condition

这个主/从结构可以扩展到你想要的任意数量的循环。

答案 2 :(得分:0)

我看到两个选项:

  1. 与选项2类似,但是“循环数值”不在“循环值积累”中,而是在“超时” - 内部。然后你不需要while循环,而是使用if-case(loop = true)。
  2. 使用两个while循环。每个人都在里面放了一个事件案例。一个用于处理“C = A + B” - 事件,另一个用于“循环值已更改”。

答案 3 :(得分:0)

我认为您正在寻找的设计模式是生产者/消费者模式。这允许您运行并行循环,如果需要它们之间共享数据。

快速谷歌与术语结合使用labview将为您提供足够的示例。