labview程序自带的循环存在死时间

labview程序自带的循环存在死时间,第1张

Labview中的循环结构有for和while两种,其中for结构的循环次数是预先给定或者是可以确定的,而while循环则需要通过判断内部的条件节点来决定是否终止vi的运行. 出现死循环的情况一般都与使用这两种结构有关.这可以分为两种情况:一种是vi停在某一次循环上无限等待,导致了死循环的出现另一种是vi循环无限进行下去,而不能控制其停止下来,这主要在while结构中出现,因为程序的设计问题使控制while停止的按钮失效. 先来说说后一种情况(如上图).由于循环结构在进入循环后将不再理会循环框外数据的变化,因此如果 停止 按钮第一次不能使循环停止的话,就会导致循环无限运行下去,形成死循环.故产生循环终止条件的数据源一定要放在循环框内. 再看下面的例子,它说明了当对话框与while循环一起使用时应注意的问题.如右所示的vi运行后将处于不断地询问状态, 停止 按钮在这里失去作用(此时只能通过任务管理器强行退出labview).造成这种死循环的原因就在于程序没有对 询问 函数的值作出处理.要使vi处于受控状态,就必须把询问函数的值与循环的条件端子联系起来。

写随机使LED亮的VI(可重入),写计算某个LED 亮的时间的VI(可重入)写主VI,在同一个loop中调用1、2 中的VI,由于是可重入的,可以多次调用。

LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。

LabVIEW软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。 LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。

在程序开始阶段用一个毫秒计时器记录当前时间,输出给一个局部变量A,然后在一个While循环里面不断刷新毫秒计数器值,减去局部变量A,记为运行时间,这个值是不断刷新的。

不知道有没有讲清楚?可以继续询问~求给分!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11470098.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存