labview中条件结构中输出数组变量问题

2019-07-18 04:17发布

一个子VI的条件结构中, 例如<true>中, 输出一个变量. 但case False中不加处理, 用探针可以发现, 输出的变量在一个合理的值和 0 之间变化, 但我希望的是如果是case False,保持上一次的值.
后来我用了该输出变量的引用作为输入, 解决该问题.
一直想知道,还是否有其他的方法. 因为我输出的是数组, 上级调用VI必须也创建一个中间的数组变量,将该数组变量的引用作为输入. 不知有没有方法不引入一个中间的数组变量.
中间变量指在前面板山不用显示的array control
test1.jpg
test2.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
mopeipei
1楼-- · 2019-07-18 05:32
功能类似于功能变量,用数值做了个示例,供参考另外,用反馈节点也能实现相同的功能
3.png

示例.vi (16.9 KB, 下载次数: 39)
zeng
2楼-- · 2019-07-18 07:40
THANKS, 我后来用功能变量做了. 也是在别人的提醒下.

我有个疑问, LABVIEW的子VI在调用结束后,也会留在内存里吗? 即移位寄存器,在子VI调用结束后,不会被清空?

The subVI is still in memory even it return to caller.

LabVIEW will hold the subVI in memory until caller left memory. 为什么这样呢?
zeng
3楼-- · 2019-07-18 11:25
 精彩回答 2  元偷偷看……
mopeipei
4楼-- · 2019-07-18 14:04
zeng 发表于 2012-1-9 16:11
THANKS, 我后来用功能变量做了. 也是在别人的提醒下.

我有个疑问, LABVIEW的子VI在调用结束后,也会留在 ...

这很正常的,就像你的应用程序调用了一个dll,哪怕只用一次,也要等exe结束退出后才释放的。是一种机制
Jack_ren
5楼-- · 2019-07-18 16:48
不错,经典的程序,谢谢
Jack_ren
6楼-- · 2019-07-18 22:39
值得学习学习,谢谢

一周热门 更多>