LabVIEW中的数据流编程基础

2015-10-15 07:56:10来源: eefocus 关键字:LabVIEW  数据流  编程基础
LabVIEW按照数据流(dataflow)模式运行VI。 当接受到所有所需的输入时,程序框图节点将运行。节点在运行时产生输出端数据并将该数据传送给数据流路径中的下一个节点。 数据流经节点的过程决定了程序框图上VI和函数的执行顺序。

Visual Basic,C++,JAVA以及绝大多数其它文本编程语言都遵循程序执行的控制流模式。 在控制流中,程序元素的先后顺序决定了程序的执行顺序。

图1显示了一个数据流编程的范例,程序框图中两个数字相加,然后从结果中减去50.00。 在这个范例中,程序框图从左向右执行,这并非因为对象的放置顺序,而是因为“减”函数必须在“加”函数执行完,并将数据传到“减”法函数后才能执行。 节点只有在所有输入接线端数据准备好后才能执行,只有在节点完成执行后才能向输出接线端提供数据。

图1.数据流编程范例

在图2中,考虑哪段代码先执行—“加”、“随机数”,还是“除”函数。 您无法知道答案,因为“加”和“除”函数的输入同时可用,而随机数并没有输入。 在一个代码段必须在另一个前执行,并且两个函数间没有数据依赖关系的情况下,可以采用其它编程方法(例如顺序结构或错误簇)强制设定执行的顺序。

图2.多代码段的数据流范例

最后补充一下:

 

如果两个或两个以上的线程在同一时间企图访问同一个内存 地址,那么将会发生数据冲突。显然,在应用程序中识别可能产生冲突的代码是一项艰巨的任务。但是,通过在 LabVIEW中以 图形化的方式创建程序框图,用户可以迅速展开具体工作,并实现自己的构想,而无需考虑线程同步。两个并行化的图形代码段在写入文件时都需要访问硬盘,LabVIEW可 以自动地处理这两个线程的同步。

关键字:LabVIEW  数据流  编程基础

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2015/1015/article_13500.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:使用NI LabVIEW和CompactRIO为印度的子站开发自动化仪表读取系统
下一篇:LabVIEW系列——自定义错误

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
LabVIEW
数据流
编程基础

小广播

独家专题更多

东芝在线展会——芯科技智社会创未来
东芝在线展会——芯科技智社会创未来
2017东芝PCIM在线展会
2017东芝PCIM在线展会
TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved