當(dāng)前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]LABVIEW是多線程的,在兩個線程交換數(shù)據(jù)有多種方法,進(jìn)程(PROCESS)和線程(THREAD)是兩個不同的概念,我們啟動一個執(zhí)行文件實際上就是啟動一個進(jìn)程,WINDOWS的進(jìn)程管理器可以觀察到當(dāng)前存在那些活動進(jìn)程,進(jìn)程間交換數(shù)據(jù)可

LABVIEW是多線程的,在兩個線程交換數(shù)據(jù)有多種方法,進(jìn)程(PROCESS)和線程(THREAD)是兩個不同的概念,我們啟動一個執(zhí)行文件實際上就是啟動一個進(jìn)程,WINDOWS的進(jìn)程管理器可以觀察到當(dāng)前存在那些活動進(jìn)程,進(jìn)程間交換數(shù)據(jù)可以簡單地理解成多個執(zhí)行文件間交換數(shù)據(jù).

進(jìn)程間交換數(shù)據(jù)有幾種方法:剪切板(CLIPBOARD),動態(tài)數(shù)據(jù)交換(DDE),內(nèi)存映射文件(MAP FILE)和一般文件,當(dāng)然也可以用TCP/IP ,SHARE VARIABLE,DATASOCKET,不過這些都屬于網(wǎng)絡(luò)數(shù)據(jù)交換,用于本機(jī)進(jìn)程間通訊并不合適.

過去的一篇文章中已經(jīng)介紹過如何利用剪切板進(jìn)行通訊,今天介紹一下動態(tài)數(shù)據(jù)交換(DDE)

DDE(Dynamic Data Exchange),即動態(tài)數(shù)據(jù)交換,是Windows平臺上的一個完整的通信協(xié)議,它使應(yīng)用程序能彼此交換數(shù)據(jù)和發(fā)送指令。DDE過程是兩個程序的對話過程,一方向另一方提出問題,然后等待回答。提出問題的一方即申請告知信息的應(yīng)用程序,稱為顧客(Client),回答的一方即提供信息的應(yīng)用程序,稱為服務(wù)器(Server)。一個應(yīng)用程序可以同時是顧客和服務(wù)器:當(dāng)它向其他程序請求數(shù)據(jù)時,它充當(dāng)?shù)氖穷櫩?;?dāng)有其它程序需要它提供數(shù)據(jù)時,它又成了服務(wù)器。但就某一確定的時刻而言,一個應(yīng)用程序只能充當(dāng)顧客或服務(wù)器。

DDE對話的內(nèi)容是通過3 個標(biāo)識進(jìn)行約定的:①服務(wù)器名(Service Name):DDE源的每個應(yīng)用程序有一個唯一的服務(wù)器名,通常為不帶后綴的可執(zhí)行文件;②話題(Topic):對源程序有意義的一些數(shù)據(jù)單元即對話的議題,許多應(yīng)用程序?qū)⑽臋n名作為DDE會話的話題;③項目(Item):DDE會話中,兩個應(yīng)用程序間真正傳遞的數(shù)據(jù)。建立DDE之前,客戶程序必須填寫服務(wù)程序的3個標(biāo)識名。

DDE鏈接有3種類型:①熱鏈接(hot link):服務(wù)器發(fā)送專門為DDE對話而設(shè)定項目中的數(shù)據(jù),當(dāng)這些數(shù)據(jù)發(fā)生變化時,鏈接將實時動作,自動更新數(shù)據(jù);②冷鏈接(cold link):當(dāng)數(shù)據(jù)發(fā)生變化時,客戶必須明確地提出更新要求,數(shù)據(jù)才會被更新;③暖鏈接(warm link):服務(wù)器在數(shù)據(jù)發(fā)生變化時,通知客戶,客戶根據(jù)自己的要求決定是否更新數(shù)據(jù)。

DDE本質(zhì)上是通過發(fā)送消息實現(xiàn)的,在VC和CVI中,可以注冊事件回調(diào)函數(shù),實現(xiàn)自動數(shù)據(jù)交換,但是遺憾的是LABVIEW并沒有對DDE提供事件驅(qū)動方式,正如它的串口操作一樣,都是通過輪詢(POLLING)方式進(jìn)行的,因此就涉及到兩個進(jìn)程DDE速度協(xié)調(diào)的問題。

DDE是WINDOWS早期進(jìn)程間通訊的重要方式,現(xiàn)在用的不多了,但是很多應(yīng)用程序,比如OFFICE,MATLAB等,包括各種流行的組態(tài)軟件,依然提供對DDE的支持,所以有必要了解一下。

7。1以后的LABVIEW在模板中是找不到DDE庫的,需要手動添加到USER LIB中。

C:Program FilesNational InstrumentsLabVIEW 8.5vi.libPlatformdde.llb

主要分成客戶機(jī)和服務(wù)器兩部分,客戶機(jī)和服務(wù)器VI。


DDE數(shù)據(jù)交換首先要啟動服務(wù)器,否則客戶機(jī)無法連接。

服務(wù)器操作過程是:
注冊服務(wù)器---》注冊ITEM----》設(shè)定ITEM值-----》取消ITEM注冊---》取消服務(wù)器注冊




相應(yīng)客戶端的讀數(shù)據(jù)框圖




注意到服務(wù)器的循環(huán)每500MS更新一次,客戶端每500MS更新一次,服務(wù)器和客戶端基本保持同步,如果客戶端速度高于服務(wù)器,將導(dǎo)致對服務(wù)器的同一數(shù)據(jù)讀多次,同理,如果服務(wù)端運(yùn)行速度快,客戶端運(yùn)行速度慢,將導(dǎo)致數(shù)據(jù)丟失,這正是沒有事件響應(yīng)的缺點(diǎn),很難保證發(fā)送和接受的同步。因此,上面的程序僅適用于對數(shù)據(jù)交換要求不高的情況,比如監(jiān)控等。

DDE是一個層次結(jié)構(gòu),SERVER--》TOPIC---》ITEM
一個SEVER可以包括多個TOPIC,(類似與組),每個TOPIC又可以包括多個ITEM(項目),我們可以通過循環(huán)注冊多個TOPIC和多個ITEM,實現(xiàn)批量數(shù)據(jù)交換。




上圖中,通過循環(huán)為TOPIC1同時注冊了10個ITEM,分別是ITEM0----》ITEM9,在主循環(huán)中分別向ITEM0--》ITEM9寫入數(shù)據(jù)。





同理,我們可以對我們有通訊的數(shù)據(jù)詳細(xì)分類成多個SERVER和多個TOPIC,進(jìn)行大量的數(shù)據(jù)交換。

后續(xù)文章中將進(jìn)一步介紹DDE的高級同步技術(shù)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉