1.使用事件发生函数
使用 Occurrences 函数来控制单独的同步活动。特别是,当您希望程序框图的一部分等待程序框图的另一部分完成任务而不强制 LabVIEW 进行轮询时,请使用这些函数。
您可以使用全局变量执行类似于occurrences函数的功能,通过一个循环轮询全局变量,直到其值发生变化。然而,全局变量会消耗更多的系统资源,并且会因轮询循环而引入抖动。
1.1产生事件发生函数
生成一个事件,您可以将其传递给“等待发生”和“设置发生”函数。
通常,只有一个“生成发生”函数连接到任何一组“等待发生”和“设置发生”函数。您可以将生成发生函数连接到任意数量的等待发生和设置发生函数。您不必具有相同数量的“等待发生”和“设置发生”函数。
与其他同步VI不同,程序框图上的每个生成事件函数都代表一个唯一的事件。这样,Generate Occurrence 函数就类似于一个常量。当VI运行时,每次执行生成事件函数时,该函数都会产生相同的值。例如,如果将“生成出现次数”函数放置在循环内,则“生成出现次数”函数生成的值对于循环的每次迭代都是相同的。如果将生成事件函数放置在可重入VI的程序框图上,则生成事件函数会为每个调用者生成不同的值。
1.2 等待事件发生函数
等待“设置出现次数”函数设置给定的出现次数。
1.3设置发生函数
设置指定的发生。所有等待此发生的节点停止等待。
1.4简单事件发生案例
1.5FPGA上使用事件发生函数
当程序框图的一部分等待程序框图的另一部分完成任务而不强制 LabVIEW 进行轮询时,可以使用 Occurrences 函数。
当然也可以使用全局变量执行类似于occurrences函数的功能,通过一个循环轮询全局变量,直到其值发生变化。然而,全局变量会消耗更多的系统资源,并且会因轮询循环而引入抖动。