虛擬儀器實用編程技術(shù)第7章-外部應(yīng)用接口課件_第1頁
虛擬儀器實用編程技術(shù)第7章-外部應(yīng)用接口課件_第2頁
虛擬儀器實用編程技術(shù)第7章-外部應(yīng)用接口課件_第3頁
虛擬儀器實用編程技術(shù)第7章-外部應(yīng)用接口課件_第4頁
虛擬儀器實用編程技術(shù)第7章-外部應(yīng)用接口課件_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、主要學(xué)習(xí)內(nèi)容 1學(xué)習(xí)CIN的概念和調(diào)用;2學(xué)習(xí)Matlab節(jié)點的使用;3學(xué)習(xí)DLL的概念和調(diào)用。 7.1 CIN CIN的概念 CIN是Code Interface Node的縮寫,是LabVIEW開發(fā)平臺的G語言環(huán)境與C語言的接口 CIN與LabVIEW中的其他節(jié)點類似,是通過輸入、輸出端口來實現(xiàn)兩種語言之間的數(shù)據(jù)和參數(shù)的傳遞的。 CIN的調(diào)用步驟在后面板框圖程序設(shè)計窗口中,選擇All Functions Advanced子模板下的Code Interface Node 節(jié)點 ,放置在框圖程序設(shè)計窗口中。 CIN圖標(biāo)中的一個小格表示一個參數(shù)端口,左側(cè)為輸入端口,右側(cè)為輸出端口,而且左右端口是

2、一一對應(yīng)的,代表一個參數(shù)的一對輸入輸出端口。 CIN節(jié)點的輸入、輸出端口的數(shù)據(jù)類型由連接在該端口上的控件的數(shù)據(jù)類型來決定。 2.在節(jié)點圖標(biāo)上單擊右鍵彈出快捷菜單,選擇Add parameter命令項添加參數(shù)。 如果需要增加參數(shù),可以通過兩種方法:1. 用鼠標(biāo)定位工具拖動節(jié)點一角改變節(jié)點圖標(biāo)的尺寸;設(shè)計CIN模塊的步驟利用LabVIEW提供的框架設(shè)計CIN模塊的步驟:1生成C源代碼框架 2添加C源代碼3編譯生成lsb文件 4加載編譯成功的lsb文件 7.2 MatlabLabVIEW中的公式節(jié)點可以實現(xiàn)一些基本的數(shù)學(xué)運算,如果涉及到比較復(fù)雜的數(shù)學(xué)運算,則可以調(diào)用Matlab的腳本文件(m文件)來

3、實現(xiàn)。注意:要使用Matlab節(jié)點,必須首先安裝Matlab ,因為Matlab節(jié)點要調(diào)用Matlab腳本服務(wù)器。 7.2.1 Matlab節(jié)點 Matlab節(jié)點位于功能面板的All FunctionsAnalyze MathematicsFormula子模板內(nèi),添加Matlab節(jié)點的方式和前面章節(jié)中添加公式節(jié)點的方式類似。 創(chuàng)建Matlab節(jié)點 在Formula子模板選擇Matlab節(jié)點 向Matlab節(jié)點輸入Matlab文件的方法有兩種: 一種是直接在框內(nèi)寫入文件代碼; 另一種是在Matlab節(jié)點的邊框上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇Import命令選項,在彈出的對話框中輸入Matl

4、ab腳本文件即可。 輸入Matlab文件的菜單操作 輸入/輸出變量的添加和公式節(jié)點類似,分別用Add Input和Add Output來實現(xiàn)。 和公式節(jié)點一樣,用戶可以為Matlab節(jié)點的每個輸入/輸出變量添加指示器或者控制器。 為Matlab節(jié)點的輸入/輸出變量添加指示器或控制器 7.2.2 LabVIEW和Matlab數(shù)據(jù)類型在Matlab中,用戶一般不用指定數(shù)據(jù)類型,所有輸入變量會有缺省的類型,而在LabVIEW里面,Matlab節(jié)點并不能夠判斷數(shù)據(jù)類型,因此用戶必須要為每個數(shù)據(jù)變量指定一個類型。在腳本節(jié)點上,可以改變輸入或輸出端子的數(shù)據(jù)類型,應(yīng)該經(jīng)常檢查腳本節(jié)點的輸入、輸出數(shù)據(jù)類型。在

5、Matlab中,對于任何新的輸入或輸出,其默認(rèn)類型為Real。 改變腳本節(jié)點上輸入輸出端子的數(shù)據(jù)類型首先在變量上面單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇Choose Data Type命令選項,就會出現(xiàn)Matlab中的各種數(shù)據(jù)類型名稱,然后按照事先在Matlab中定義的類型給每個變量選擇合適的數(shù)據(jù)類型,則系統(tǒng)就會把變量變成相應(yīng)的LabVIEW內(nèi)的類型。 定義數(shù)據(jù)類型的菜單操作 數(shù)據(jù)類型圖標(biāo)LabVIEW數(shù)據(jù)類型Matlab數(shù)據(jù)類型帶符號32位整數(shù)不適用雙精度浮點數(shù)Real字符串不適用帶符號32位整數(shù)一維數(shù)組不適用帶符號32位整數(shù)多維數(shù)組不適用雙精度浮點數(shù)一維數(shù)組Real Vector雙精度浮點數(shù)

6、多維數(shù)組Real Matrix多精度復(fù)數(shù)Complex雙精度復(fù)數(shù)一維數(shù)組Complex Vector雙精度復(fù)數(shù)多維數(shù)組Complex Matrix表7-1 LabVIEW和Matlab數(shù)據(jù)類型 7.2.3 Matlab節(jié)點應(yīng)用例7.1 畫一段正弦函數(shù)圖像。在Matlab節(jié)點內(nèi)寫入如下代碼:x=-5:1/10:5;y=sin(x);plot(x, y); 框圖程序 Matlab中畫出的正弦函數(shù)圖 LabVIEW中畫出的正弦函數(shù)圖 7.3 DLLLabVIEW提供了C語言接口及直接調(diào)用動態(tài)鏈接庫(DLL)函數(shù)的功能。DLL是建立在客戶端/服務(wù)器通信的概念上,包含若干個函數(shù)、類或資源的庫文件,函數(shù)和

7、數(shù)據(jù)被存儲在一個DLL服務(wù)器上,并由一個或多個客戶導(dǎo)出使用,這些客戶可以是應(yīng)用程序,或者是其他的DLL。 在動態(tài)鏈接的情況下,有兩個文件,一個是引入庫(.Lib)文件,一個是DLL文件。引入庫文件包含從DLL導(dǎo)出的函數(shù)的名稱和位置,DLL包含實際的函數(shù)和數(shù)據(jù)。應(yīng)用程序使用Lib文件鏈接到所需要使用的DLL文件,庫中的函數(shù)和數(shù)據(jù)并不復(fù)制到可執(zhí)行文件中,因此,在應(yīng)用程序的可執(zhí)行文件中,存放的不是被調(diào)用的函數(shù)代碼,而是在DLL中所要調(diào)用的函數(shù)的內(nèi)存地址,這樣當(dāng)一個或多個應(yīng)用程序運行時,再把程序代碼和被調(diào)用的函數(shù)代碼鏈接起來,從而節(jié)省了內(nèi)存資源。 7.3.2 調(diào)用DLL在LabVIEW中,可通過 Ca

8、ll Library Function函數(shù)模塊調(diào)用動態(tài)鏈接庫。 在框圖程序設(shè)計窗口,選擇功能模板中的 Advanced Call Library Function Node,放置在框圖程序設(shè)計窗口中。 圖7-11 Call Library Function Node的圖標(biāo) 雙擊此函數(shù)模塊,將彈出Call Library Function Node對話框,可以對要調(diào)用的動態(tài)鏈接庫及其函數(shù)進行設(shè)定。 Call Library Function Node對話框 Library Name Or Path為要調(diào)用的動態(tài)鏈接庫文件名和路徑,用戶也可以通過Browse按鈕查找該動態(tài)鏈接庫文件 ;Functi

9、on Name為即將調(diào)用的函數(shù)名,它必須與動態(tài)鏈接庫中函數(shù)創(chuàng)建時的函數(shù)名相同,并且注意大小寫 ;Add a Parameter Before或Add a Parameter After可以添加函數(shù)的參數(shù),也可用Delete this Parameter刪除當(dāng)前參數(shù) ;Parameter選項用于指定任一參數(shù)的類型,也可指定該函數(shù)返回值的類型。 函數(shù)的參數(shù)名任意,但其順序和類型必須與動態(tài)鏈接庫中函數(shù)創(chuàng)建時的順序和類型一致。需要注意的是,上圖所示對話框中Calling Conventions項的設(shè)置應(yīng)與創(chuàng)建動態(tài)鏈接庫時的編譯模式相一致,否則會發(fā)生不可預(yù)見的錯誤而退出程序。 單擊OK按鈕后,就可以將該Call Library Function節(jié)點當(dāng)作一個具有該動態(tài)鏈接庫中被調(diào)函數(shù)功能的節(jié)點來使用。LabVIEW還提供了編寫動態(tài)鏈接庫的C源代碼框架,利用此框架編寫動態(tài)鏈接庫的步驟如下:1生成C源代碼框架 在后面板框圖程序設(shè)計窗口創(chuàng)建Call Library Function Node,在其圖標(biāo)上單擊右鍵彈出快捷菜單,選擇Create .c File命令選項,這時彈出一個文件對話框,在其中鍵入文件名(例如:labview_DLL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論