NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

功能全局变量读写数据问题

利用功能全局变量实现读写操作,比如一个功能型全局变量FuncG里有3个变量(a b c初始值为0或任意值)写数据,对应3个变量(a b c)读数据。很方便,但是有个问题。在一个VI里面给FuncG里的a写入值a=3;在另一个VI给FuncG里的b写入值b=4;然后在第三个VI里读FuncG里的a的值,读出来的结果为a=0。因为FuncG里a的初值是什么,读的结果就是什么。有什么好的方法,实现读a的值为a=3吗?当然如果一个功能全局变量里面只有一个变量就不存在这个问题。一个功能全局变量里有很多变量,每次只针对其中一个变量写数据,再读数据时就不是之前写的数据了。

1 条消息(共 4 条)
6,312 次查看
0 项奖励
2 条消息(共 4 条)
6,222 次查看

@freshData wrote:

利用功能全局变量实现读写操作,比如一个功能型全局变量FuncG里有3个变量(a b c初始值为0或任意值)写数据,对应3个变量(a b c)读数据。很方便,但是有个问题。在一个VI里面给FuncG里的a写入值a=3;在另一个VI给FuncG里的b写入值b=4;然后在第三个VI里读FuncG里的a的值,读出来的结果为a=0。因为FuncG里a的初值是什么,读的结果就是什么。有什么好的方法,实现读a的值为a=3吗?当然如果一个功能全局变量里面只有一个变量就不存在这个问题。一个功能全局变量里有很多变量,每次只针对其中一个变量写数据,再读数据时就不是之前写的数据了。


Hi

 

Could you show us your block diagram so that we are able to look into your problem.

Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010, 2014
依恩与LabVIEW
LVVILIB.blogspot.com
0 项奖励
3 条消息(共 4 条)
6,214 次查看

估计你是在LV2中存储了三个变量,通过输入输出端子读写,当你写入A时,没有输入B和C,这是B和C采用的默认值0写入,再读B和C时,自然为0了。

 

对于LV中读写多个变量,可以存储或者数组,就不会出现这样的问题了。

陈树学
QQ:276509891 .
EMAIL:CSXCS_366@126.COM
qq群:78561268 80754347 37591940
http://labview.weebly.com/
新书《LabVIEW实用工具详解》已经发售,敬请关注。
0 项奖励
4 条消息(共 4 条)
6,206 次查看