




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院第第7章章 與其他應用軟件的接口與其他應用軟件的接口本章內容本章內容 7.1 LabVIEW的的ActiveX編程編程 7.2 與與MATLAB語言接口技術語言接口技術 7.3 LabVIEW對對Windows庫函數(shù)的調用庫函數(shù)的調用 7.4 LabVIEW對可執(zhí)行系統(tǒng)文件的調用對可執(zhí)行系統(tǒng)文件的調用 7.5 LabVIEW對對DDE函數(shù)的調用函數(shù)的調用周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1 LabVIEW的的ActiveX編程編程 LabVIEW支持對支持對ActiveX的調用。的調用。ActiveX采用客戶
2、端采用客戶端/服服務器模式進行不同應用程序的鏈接,調用其他應用程序時,務器模式進行不同應用程序的鏈接,調用其他應用程序時,這個應用程序被作為客戶端。自己創(chuàng)建的對象被其他應用程這個應用程序被作為客戶端。自己創(chuàng)建的對象被其他應用程序調用時,這個應用程序被作為服務器。如序調用時,這個應用程序被作為服務器。如LabVIEW可作為可作為ActiveX客戶端,來訪問其他客戶端,來訪問其他ActiveX應用程序,獲取其相關應用程序,獲取其相關的對象、屬性、方法和事件,來增強的對象、屬性、方法和事件,來增強LabVIEW程序的功能;程序的功能;LabVIEW也可以作為也可以作為ActiveX服務器,因此其他程
3、序也可以服務器,因此其他程序也可以訪問訪問LabVIEW對象、屬性和方法,如調用對象、屬性和方法,如調用VI、啟動或退出、啟動或退出LabVIEW軟件等,即在其他應用程序開發(fā)平臺下調用軟件等,即在其他應用程序開發(fā)平臺下調用LabVIEW的服務特性,這大大增加了程序代碼的可重復利用的服務特性,這大大增加了程序代碼的可重復利用性,同時也縮短程序開發(fā)的時間。性,同時也縮短程序開發(fā)的時間。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.1 ActiveX概述概述 ActiveX 是是“網(wǎng)絡化多媒體對象技術網(wǎng)絡化多媒體對象技術”,是一整套跨越,是一整套跨越編程語言的軟件開發(fā)手段與規(guī)范
4、,是由編程語言的軟件開發(fā)手段與規(guī)范,是由Microsoft公司定義的公司定義的用于用于Internet的一種對象鏈接與嵌入技術,它滿足了網(wǎng)絡上不的一種對象鏈接與嵌入技術,它滿足了網(wǎng)絡上不同應用程序間交換信息的需求,它與具體的編程語言無關。同應用程序間交換信息的需求,它與具體的編程語言無關。 ActiveX自動化是基于組件對象模型自動化是基于組件對象模型COM(Component Object Model)的技術,是用來描述建立在)的技術,是用來描述建立在COM基礎之上的基礎之上的非非COM技術,允許應用程序或組件控制另一個應用程序或組技術,允許應用程序或組件控制另一個應用程序或組件的運行,它包
5、括自動化服務器和自動化控制器。件的運行,它包括自動化服務器和自動化控制器。LabVIEW 2011可以作為一個客戶端支持可以作為一個客戶端支持ActiveX自動化。自動化。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院(1)ActiveX的屬性和方法的屬性和方法(2)變體)變體(3)ActiveX事件事件 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.2 ActiveX控件容器控件容器 ActiveX控件最早是針對于控件最早是針對于Microsoft公司的公司的Internet Explorer設計的,通過定義容器(調用設計的,通過定義容器(調用ActiveX控
6、件的程序)控件的程序)和組件(和組件(ActiveX控件)之間的接口規(guī)范,用戶可以很方便地控件)之間的接口規(guī)范,用戶可以很方便地在多種容器中使用在多種容器中使用ActiveX控件,而不必修改控件的代碼。如控件,而不必修改控件的代碼。如在在Word中可以嵌入中可以嵌入Excel表格,此時表格,此時Word就是一個就是一個ActiveX容容器。器。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.3 ActiveX函數(shù)函數(shù) 打開打開ActiveX對象,訪問對象,訪問ActiveX對象的屬性、方法或事對象的屬性、方法或事件等都需要利用件等都需要利用LabVIEW提供的提供的Activ
7、eX操作函數(shù)。操作函數(shù)。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.4 LabVIEW作為作為ActiveX客戶端客戶端 LabVIEW可作為可作為ActiveX客戶端,來訪問其他客戶端,來訪問其他ActiveX應應用程序,獲取其相關的對象、屬性、方法和事件,即可以在用程序,獲取其相關的對象、屬性、方法和事件,即可以在LabVIEW中打開不同的應用程序。中打開不同的應用程序。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.5 LabVIEW作為作為ActiveX服務器服務器 從其它應用程序通過從其它應用程序通過ActiveX調用可以訪問調用可以訪問L
8、abVIEW應應用程序、用程序、VI和控件屬性及其方法。其它支持和控件屬性及其方法。其它支持ActiveX的應用程的應用程序如序如Microsoft Excel,可以通過,可以通過LabVIEW申請屬性、方法和申請屬性、方法和單獨的單獨的VI,此時,此時LabVIEW是作為一個是作為一個ActiveX服務器。服務器。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.1.6 ActiveX事件事件 要在應用程序中使用要在應用程序中使用ActiveX事件,必須先注冊該事件并事件,必須先注冊該事件并在事件發(fā)生時處理事件。在事件發(fā)生時處理事件。ActiveX事件注冊與動態(tài)事件注冊類事件注
9、冊與動態(tài)事件注冊類似。但似。但ActiveX事件事件VI與事件處理與事件處理VI的架構不同。以下是典型的架構不同。以下是典型的的ActiveX事件事件VI的組件。的組件。(1)需要產生事件的)需要產生事件的ActiveX對象。對象。 (2)事件回調注冊函數(shù)用于指定和注冊需生成事件的類型。)事件回調注冊函數(shù)用于指定和注冊需生成事件的類型。 (3)回調)回調VI包含用戶自己編寫的處理指定事件的代碼。包含用戶自己編寫的處理指定事件的代碼。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.2 與與MATLAB語言接口技術語言接口技術7.2.1 MATLAB概述概述 MATLAB(MATr
10、ix LABoratory,矩陣實驗室)是由美,矩陣實驗室)是由美國國Math Works公司于公司于1984年開發(fā)的一種功能強、效率高、可年開發(fā)的一種功能強、效率高、可視化、簡單易學的數(shù)學科學計算軟件,它是基于矩陣運算的視化、簡單易學的數(shù)學科學計算軟件,它是基于矩陣運算的語言,其函數(shù)庫包含了比較齊全的矩陣生成與運算的函數(shù),語言,其函數(shù)庫包含了比較齊全的矩陣生成與運算的函數(shù),因此編程簡單。因此編程簡單。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.2.2 MATLAB腳本節(jié)點在腳本節(jié)點在LabVIEW中的調用中的調用 腳本節(jié)點用于執(zhí)行腳本節(jié)點用于執(zhí)行LabVIEW中基于文本的數(shù)
11、學腳本。中基于文本的數(shù)學腳本。LabVIEW支持調用第三方腳本服務器處理腳本的腳本節(jié)點,支持調用第三方腳本服務器處理腳本的腳本節(jié)點,類似于公式節(jié)點。例如,類似于公式節(jié)點。例如,MATLAB腳本服務器。腳本服務器。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.2.3 使用使用ActiveX函數(shù)與函數(shù)與MATLAB接口接口 LabVIEW使用使用ActiveX 技術來實現(xiàn)技術來實現(xiàn)MATLAB 腳本節(jié)點。腳本節(jié)點。MATLAB支持支持ActiveX自動化技術。通過使用自動化技術。通過使用MATLAB自動自動化服務器功能,可以在其它應用程序中執(zhí)行化服務器功能,可以在其它應用程序中執(zhí)行
12、MATLAB命令,命令,并與并與MATLAB的工作空間進行數(shù)據(jù)交換。因此可以借助于的工作空間進行數(shù)據(jù)交換。因此可以借助于LabVIEW中的中的ActiveX函數(shù)這一特性,把函數(shù)這一特性,把LabVIEW與與MATLAB結合,充分利用結合,充分利用MATLAB提供的大量高效可靠的算提供的大量高效可靠的算法和法和LabVIEW的圖形化編程能力,混合開發(fā)出功能更加強大的圖形化編程能力,混合開發(fā)出功能更加強大的應用軟件。的應用軟件。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.2.4 兩種調用兩種調用MATLAB方法的比較方法的比較1MATLAB腳本節(jié)點方法腳本節(jié)點方法2Active
13、X函數(shù)方法函數(shù)方法周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.3 LabVIEW對對Windows庫函數(shù)的調用庫函數(shù)的調用7.3.1 動態(tài)鏈接庫(動態(tài)鏈接庫(DLL)與)與API概述概述動態(tài)鏈接庫(動態(tài)鏈接庫(DLL) 動態(tài)鏈接庫(動態(tài)鏈接庫(Dynamic Linkable Library,簡稱,簡稱DLL),從字面上看,它是一種),從字面上看,它是一種“程序庫程序庫”,是一個可執(zhí),是一個可執(zhí)行、可以多方共享的程序模塊,庫內存放的是可供應用程序行、可以多方共享的程序模塊,庫內存放的是可供應用程序使用的函數(shù)、變量等。動態(tài)連接是一種應用程序在運行時與使用的函數(shù)、變量等。動態(tài)連接
14、是一種應用程序在運行時與庫文件連接起來的技術。庫文件連接起來的技術。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院2. API 系統(tǒng)除了協(xié)調應用程序的執(zhí)行、內存的分配、系統(tǒng)資源系統(tǒng)除了協(xié)調應用程序的執(zhí)行、內存的分配、系統(tǒng)資源的管理外,同時它也是一個很大的服務中心。調用這個服務的管理外,同時它也是一個很大的服務中心。調用這個服務中心的各種服務(每一種服務就是一個函數(shù))可以幫助應用中心的各種服務(每一種服務就是一個函數(shù))可以幫助應用程序達到開啟視窗、描繪圖形和使用周邊設備等目的,由于程序達到開啟視窗、描繪圖形和使用周邊設備等目的,由于這些函數(shù)服務的對象是應用程序,所以稱之為應用程序接口
15、這些函數(shù)服務的對象是應用程序,所以稱之為應用程序接口(Application Programming Interface,簡稱,簡稱API),又稱為),又稱為應用編程接口。它其實是一些預先定義的函數(shù),目的是提供應用編程接口。它其實是一些預先定義的函數(shù),目的是提供應用程序與開發(fā)人員基于某軟件或硬件的以訪問一組例程的應用程序與開發(fā)人員基于某軟件或硬件的以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節(jié)。能力,而又無需訪問源碼,或理解內部工作機制的細節(jié)。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.3.2 CIN節(jié)點與節(jié)點與CLF節(jié)點節(jié)點CIN節(jié)點節(jié)點 LabVIEW
16、2011之前的版本中,提供了一種在之前的版本中,提供了一種在LabVIEW中用來調用中用來調用C/C+語言代碼的功能節(jié)點,稱為代語言代碼的功能節(jié)點,稱為代碼接口節(jié)點(碼接口節(jié)點(Code Interface Node),簡稱),簡稱CIN節(jié)點,是它節(jié)點,是它與動態(tài)鏈接庫的不同之處在于,它能夠將代碼集成在與動態(tài)鏈接庫的不同之處在于,它能夠將代碼集成在VI中中作為單獨的一個作為單獨的一個VI發(fā)布,而不需要多余的文件。發(fā)布,而不需要多余的文件。 2. CLF節(jié)點節(jié)點1. 調用庫函數(shù)節(jié)點(調用庫函數(shù)節(jié)點(Call Library Function Node),),簡稱簡稱CLF節(jié)點,用于調用外部動態(tài)鏈
17、接庫節(jié)點,用于調用外部動態(tài)鏈接庫DLL文件中的函數(shù),文件中的函數(shù),一個配置好的一個配置好的CLF節(jié)點可以當作一個函數(shù)來使用,同樣具有節(jié)點可以當作一個函數(shù)來使用,同樣具有函數(shù)參數(shù)和返回值。函數(shù)參數(shù)和返回值。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.3.3 調用調用Windows API函數(shù)函數(shù) Windows API函數(shù)是一套用來控制函數(shù)是一套用來控制Windows的各個部件的各個部件的外觀和行為的預先定義的的外觀和行為的預先定義的Windows函數(shù)。用戶的每個動作函數(shù)。用戶的每個動作都會引發(fā)一個或幾個函數(shù)的運行以告訴都會引發(fā)一個或幾個函數(shù)的運行以告訴Windows發(fā)生了什
18、么。發(fā)生了什么。而其他的語言只是提供一種能自動而且更容易的訪問而其他的語言只是提供一種能自動而且更容易的訪問API的的方法。當用戶點擊窗體上的一個按鈕時,方法。當用戶點擊窗體上的一個按鈕時,Windows會發(fā)送一會發(fā)送一個消息給窗體,獲取這個調用并經(jīng)過分析后生成一個特定事個消息給窗體,獲取這個調用并經(jīng)過分析后生成一個特定事件。件。周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.4 LabVIEW對可執(zhí)行系統(tǒng)文件的調用對可執(zhí)行系統(tǒng)文件的調用 使用使用LabVIEW提供的提供的“執(zhí)行系統(tǒng)命令執(zhí)行系統(tǒng)命令”函數(shù)節(jié)點。用戶函數(shù)節(jié)點。用戶可以調用其他的可執(zhí)行系統(tǒng)文件??梢哉{用其他的可執(zhí)行系
19、統(tǒng)文件?!皥?zhí)行系統(tǒng)命令執(zhí)行系統(tǒng)命令”函數(shù)節(jié)函數(shù)節(jié)點的功能是:執(zhí)行系統(tǒng)命令。執(zhí)行系統(tǒng)命令點的功能是:執(zhí)行系統(tǒng)命令。執(zhí)行系統(tǒng)命令VI可從可從VI內部執(zhí)內部執(zhí)行或啟動其它基于行或啟動其它基于Windows的應用程序或的應用程序或Linux命令行應用程命令行應用程序。通過該序。通過該VI執(zhí)行的系統(tǒng)級命令行可包含需要啟動的應用程執(zhí)行的系統(tǒng)級命令行可包含需要啟動的應用程序支持的任何參數(shù)。序支持的任何參數(shù)。 周鵬周鵬 安徽工程大學電氣工程學院安徽工程大學電氣工程學院7.5 LabVIEW對對DDE函數(shù)的調用函數(shù)的調用 動態(tài)數(shù)據(jù)交換(動態(tài)數(shù)據(jù)交換(Dynamic Data Exchange),簡稱),簡稱DDE。它是它是Window操作系統(tǒng)下的應用程序之間的一種通訊協(xié)議。使操作系統(tǒng)下的應用程序之間的一種通訊協(xié)議。使用用DDE通訊需要兩個通訊需要兩個Windows應用程序,其中一個作為服務應用程序,其中一個作為服務器程序處理信息,另外一個作為客戶機程序從服務器獲得信器程序處理信息,另外一個作為客戶機程序從服務器獲得信息??蛻魴C應用程序向當前所激活的服務器應用程序發(fā)送一息??蛻魴C應用程序向當前所激活的服務器應用程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度酒店客房翻新裝修承包合同
- 2025年度廚師餐飲項目合伙人聘用合同范例
- 2025年離婚協(xié)議中共同債務分擔及清償協(xié)議范本
- 2025年度離婚協(xié)議書中子女心理健康關懷與輔導協(xié)議
- 2025年度城市綜合體房地產開發(fā)建設工程合同
- 制定客戶忠誠計劃的月度工作計劃
- 住院患者權益維護措施計劃
- 國際貿易的市場分析與預測計劃
- 應對突發(fā)事件的生產計劃調整
- 秋季學期學業(yè)輔導計劃
- 2025新人教版英語七年級下單詞表(小學部分)
- 2025年春季1530安全教育記錄主題
- 川教版2024-2025學年六年級下冊信息技術全冊教案
- 2022年含麻黃堿類復方制劑培訓試題和答案
- 玻璃水鉆行業(yè)需求分析及生產工藝流程
- 上科教版五年級上冊書法教案
- 中美個人所得稅征管與稅收流失現(xiàn)狀比較
- 可填充顏色的中國地圖,世界地圖,各省市地圖填色
- 第四軍醫(yī)大學擬招收博士后研究人員意見表
- 環(huán)保機制磚項目可行性研究報告寫作范文
- 中式烹調技藝PPT課件
評論
0/150
提交評論