您的位置 首页 系统

labview的深化探究—-使用DDE完成进程间的数据交换之一

LABVIEW是多线程的,在两个线程交换数据有多种方法,进程(PROCESS)和线程(THREAD)是两个不同的概念,我们启动一个执行文件实际上就是启动一个

LABVIEW是多线程的,在两个线程交流数据有多种办法,进程(PROCESS)和线程(THREAD)是两个不同的概念,咱们发动一个履行文件实际上便是发动一个进程,WINDOWS的进程管理器能够观察到当时存在那些活动进程,进程间交流数据能够简略地了解成多个履行文件间交流数据.

进程间交流数据有几种办法:剪切板(CLIPBOARD),动态数据交流(DDE),内存映射文件(MAP FILE)和一般文件,当然也能够用TCP/IP ,SHARE VARIABLE,DATASOCKET,不过这些都归于网络数据交流,用于本机进程间通讯并不适宜.

曩昔的一篇文章中现已介绍过怎么使用剪切板进行通讯,今日介绍一下动态数据交流(DDE)

DDE(Dynamic Data Exchange),即动态数据交流,是Windows平台上的一个完好的通信协议,它使应用程序能互相交流数据和发送指令。DDE进程是两个程序的对话进程,一方向另一方提出问题,然后等候答复。提出问题的一方即恳求奉告信息的应用程序,称为顾客(Client),答复的一方即供给信息的应用程序,称为服务器(Server)。一个应用程序能够一起是顾客和服务器:当它向其他程序恳求数据时,它充任的是顾客;当有其它程序需求它供给数据时,它又成了服务器。但就某一确认的时间而言,一个应用程序只能充任顾客或服务器。

DDE对话的内容是经过3 个标识进行约好的:①服务器名(Service Name):DDE源的每个应用程序有一个仅有的服务器名,一般为不带后缀的可履行文件;②论题(Topic):对源程序有意义的一些数据单元即对话的议题,许多应用程序将文档名作为DDE会话的论题;③项目(Item):DDE会话中,两个应用程序间真实传递的数据。树立DDE之前,客户程序有必要填写服务程序的3个标识名。

DDE链接有3种类型:①热链接(hot link):服务器发送专门为DDE对话而设定项目中的数据,当这些数据发生变化时,链接将实时动作,主动更新数据;②冷链接(cold link):当数据发生变化时,客户有必要明确地提出更新要求,数据才会被更新;③暖链接(warm link):服务器在数据发生变化时,告诉客户,客户依据自己的要求决议是否更新数据。

DDE本质上是经过发送音讯完成的,在VC和CVI中,能够注册事情回调函数,完成主动数据交流,可是惋惜的是LABVIEW并没有对DDE供给事情驱动方法,正如它的串口操作相同,都是经过轮询(POLLING)方法进行的,因而就涉及到两个进程DDE速度和谐的问题。

DDE是WINDOWS前期进程间通讯的重要方法,现在用的不多了,可是许多应用程序,比方OFFICE,MATLAB等,包含各种盛行的组态软件,仍然供给对DDE的支撑,所以有必要了解一下。

7。1今后的LABVIEW在模板中是找不到DDE库的,需求手动添加到USER LIB中。

C:Program FilesNational InstrumentsLabVIEW 8.5vi.libPlatformdde.llb

首要分红客户机和服务器两部分,客户机和服务器VI。

DDE数据交流首先要发动服务器,不然客户机无法衔接。

服务器操作进程是:
注册服务器—》注册ITEM—-》设定ITEM值—–》撤销ITEM注册—》撤销服务器注册

相应客户端的读数据框图

注意到服务器的循环每500MS更新一次,客户端每500MS更新一次,服务器和客户端根本坚持同步,假如客户端速度高于服务器,将导致对服务器的同一数据读屡次,同理,假如服务端运转速度快,客户端运转速度慢,将导致数据丢掉,这正是没有事情呼应的缺陷,很难确保发送和承受的同步。因而,上面的程序仅适用于对数据交流要求不高的状况,比方监控等。

DDE是一个层次结构,SERVER–》TOPIC—》ITEM
一个SEVER能够包含多个TOPIC,(相似与组),每个TOPIC又能够包含多个ITEM(项目),咱们能够经过循环注册多个TOPIC和多个ITEM,完成批量数据交流。

上图中,经过循环为TOPIC1一起注册了10个ITEM,分别是ITEM0—-》ITEM9,在主循环平分别向ITEM0–》ITEM9写入数据。

同理,咱们能够对咱们有通讯的数据具体分类成多个SERVER和多个TOP%&&&&&%,进行很多的数据交流。

后续文章中将进一步介绍DDE的高档同步技能。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/xitong/211509.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部