




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第7章 外部應用接口,主要學習內容,1學習CIN的概念和調用; 2學習Matlab節(jié)點的使用; 3學習DLL的概念和調用。,7.1 CIN,CIN的概念 CIN是Code Interface Node的縮寫,是LabVIEW開發(fā)平臺的G語言環(huán)境與C語言的接口 CIN與LabVIEW中的其他節(jié)點類似,是通過輸入、輸出端口來實現(xiàn)兩種語言之間的數(shù)據和參數(shù)的傳遞的。,CIN的調用步驟,在后面板框圖程序設計窗口中,選擇All Functions Advanced子模板下的Code Interface Node 節(jié)點 ,放置在框圖程序設計窗口中。,CIN圖標中的一個小格表示一個參數(shù)端口,左側為輸入端口,右
2、側為輸出端口,而且左右端口是一一對應的,代表一個參數(shù)的一對輸入輸出端口。 CIN節(jié)點的輸入、輸出端口的數(shù)據類型由連接在該端口上的控件的數(shù)據類型來決定。,2.在節(jié)點圖標上單擊右鍵彈出快捷菜單,選擇Add parameter命令項添加參數(shù)。,如果需要增加參數(shù),可以通過兩種方法: 1. 用鼠標定位工具拖動節(jié)點一角改變節(jié)點圖標的尺寸;,設計CIN模塊的步驟,利用LabVIEW提供的框架設計CIN模塊的步驟: 1生成C源代碼框架 2添加C源代碼 3編譯生成lsb文件 4加載編譯成功的lsb文件,7.2 Matlab,LabVIEW中的公式節(jié)點可以實現(xiàn)一些基本的數(shù)學運算,如果涉及到比較復雜的數(shù)學運算,則可
3、以調用Matlab的腳本文件(m文件)來實現(xiàn)。 注意:要使用Matlab節(jié)點,必須首先安裝Matlab ,因為Matlab節(jié)點要調用Matlab腳本服務器。,7.2.1 Matlab節(jié)點,Matlab節(jié)點位于功能面板的All FunctionsAnalyze MathematicsFormula子模板內,添加Matlab節(jié)點的方式和前面章節(jié)中添加公式節(jié)點的方式類似。,創(chuàng)建Matlab節(jié)點,在Formula子模板選擇Matlab節(jié)點,向Matlab節(jié)點輸入Matlab文件的方法有兩種: 一種是直接在框內寫入文件代碼; 另一種是在Matlab節(jié)點的邊框上單擊鼠標右鍵,在彈出的快捷菜單中選擇Impo
4、rt命令選項,在彈出的對話框中輸入Matlab腳本文件即可。,輸入Matlab文件的菜單操作,輸入/輸出變量的添加和公式節(jié)點類似,分別用Add Input和Add Output來實現(xiàn)。 和公式節(jié)點一樣,用戶可以為Matlab節(jié)點的每個輸入/輸出變量添加指示器或者控制器。,為Matlab節(jié)點的輸入/輸出變量添加指示器或控制器,7.2.2 LabVIEW和Matlab數(shù)據類型,在Matlab中,用戶一般不用指定數(shù)據類型,所有輸入變量會有缺省的類型,而在LabVIEW里面,Matlab節(jié)點并不能夠判斷數(shù)據類型,因此用戶必須要為每個數(shù)據變量指定一個類型。 在腳本節(jié)點上,可以改變輸入或輸出端子的數(shù)據類型
5、,應該經常檢查腳本節(jié)點的輸入、輸出數(shù)據類型。 在Matlab中,對于任何新的輸入或輸出,其默認類型為Real。,改變腳本節(jié)點上輸入輸出端子的數(shù)據類型,首先在變量上面單擊鼠標右鍵,在彈出的快捷菜單中選擇Choose Data Type命令選項,就會出現(xiàn)Matlab中的各種數(shù)據類型名稱,然后按照事先在Matlab中定義的類型給每個變量選擇合適的數(shù)據類型,則系統(tǒng)就會把變量變成相應的LabVIEW內的類型。,定義數(shù)據類型的菜單操作,表7-1 LabVIEW和Matlab數(shù)據類型,7.2.3 Matlab節(jié)點應用,例7.1 畫一段正弦函數(shù)圖像。 在Matlab節(jié)點內寫入如下代碼: x=-5:1/10:5
6、; y=sin(x); plot(x, y);,框圖程序,Matlab中畫出的正弦函數(shù)圖,LabVIEW中畫出的正弦函數(shù)圖,7.3 DLL,LabVIEW提供了C語言接口及直接調用動態(tài)鏈接庫(DLL)函數(shù)的功能。 DLL是建立在客戶端/服務器通信的概念上,包含若干個函數(shù)、類或資源的庫文件,函數(shù)和數(shù)據被存儲在一個DLL服務器上,并由一個或多個客戶導出使用,這些客戶可以是應用程序,或者是其他的DLL。,在動態(tài)鏈接的情況下,有兩個文件,一個是引入庫(.Lib)文件,一個是DLL文件。 引入庫文件包含從DLL導出的函數(shù)的名稱和位置,DLL包含實際的函數(shù)和數(shù)據。應用程序使用Lib文件鏈接到所需要使用的D
7、LL文件,庫中的函數(shù)和數(shù)據并不復制到可執(zhí)行文件中,因此,在應用程序的可執(zhí)行文件中,存放的不是被調用的函數(shù)代碼,而是在DLL中所要調用的函數(shù)的內存地址,這樣當一個或多個應用程序運行時,再把程序代碼和被調用的函數(shù)代碼鏈接起來,從而節(jié)省了內存資源。,7.3.2 調用DLL,在LabVIEW中,可通過 Call Library Function函數(shù)模塊調用動態(tài)鏈接庫。 在框圖程序設計窗口,選擇功能模板中的 Advanced Call Library Function Node,放置在框圖程序設計窗口中。,圖7-11 Call Library Function Node的圖標,雙擊此函數(shù)模塊,將彈出Ca
8、ll Library Function Node對話框,可以對要調用的動態(tài)鏈接庫及其函數(shù)進行設定。,Call Library Function Node對話框,Library Name Or Path為要調用的動態(tài)鏈接庫文件名和路徑,用戶也可以通過Browse按鈕查找該動態(tài)鏈接庫文件 ; Function Name為即將調用的函數(shù)名,它必須與動態(tài)鏈接庫中函數(shù)創(chuàng)建時的函數(shù)名相同,并且注意大小寫 ; Add a Parameter Before或Add a Parameter After可以添加函數(shù)的參數(shù),也可用Delete this Parameter刪除當前參數(shù) ; Parameter選項用于
9、指定任一參數(shù)的類型,也可指定該函數(shù)返回值的類型。,函數(shù)的參數(shù)名任意,但其順序和類型必須與動態(tài)鏈接庫中函數(shù)創(chuàng)建時的順序和類型一致。 需要注意的是,上圖所示對話框中Calling Conventions項的設置應與創(chuàng)建動態(tài)鏈接庫時的編譯模式相一致,否則會發(fā)生不可預見的錯誤而退出程序。 單擊OK按鈕后,就可以將該Call Library Function節(jié)點當作一個具有該動態(tài)鏈接庫中被調函數(shù)功能的節(jié)點來使用。,LabVIEW還提供了編寫動態(tài)鏈接庫的C源代碼框架,利用此框架編寫動態(tài)鏈接庫的步驟如下: 1生成C源代碼框架 在后面板框圖程序設計窗口創(chuàng)建Call Library Function Node,在其圖標上單擊右鍵彈出快捷菜單,選擇Create .c File命令選項,這時彈出一個文件對話框,在其中鍵入文件名(例如:labview_DLL.c),然后用文本編輯器打開保存的文件,LabVIEW在文件中已經生成了如下的框架 :,/* Call Library source file */ #include extcode.h void funcName(void); void funcName(void) /* Insert code here */ ,2添加源代碼 在生成的C源代碼框架中/* Insert code here */處加入用戶需要的函數(shù)體,框架中的函數(shù)名和返回類型應
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東省深圳實驗學校高中部2025屆高二化學第二學期期末聯(lián)考試題含解析
- 忻州一中2025屆高一化學第二學期期末檢測模擬試題含解析
- 2025屆重慶市普通高中化學高一下期末教學質量檢測模擬試題含解析
- 2025屆安徽省安慶市達標名校高一化學第二學期期末聯(lián)考試題含解析
- 廣西蒙山縣一中2025屆高一下化學期末達標檢測試題含解析
- 冶金設備安全管理辦法
- 供電企業(yè)信條管理辦法
- 桃江人才引進管理辦法
- 鳳慶文廟保護管理辦法
- 公寓管理辦法思路方法
- 餐車經營食品安全應急預案
- DB43T 876.11-2017 高標準農田建設 第11部分:耕地地力評定技術規(guī)范
- 全國中醫(yī)藥職業(yè)教育技能大賽針灸推拿技能大賽方案
- 2024至2030年中國漢白玉石雕數(shù)據監(jiān)測研究報告
- 三年級下冊混合計算題100道及答案
- DB12T 998-2020 殯葬服務機構消毒衛(wèi)生規(guī)范
- 廣東省廣州市五校2023-2024學年高一下學期期末聯(lián)考化學試卷
- 2024年天津高考數(shù)學真題試題(原卷版+含解析)
- 《大數(shù)據分析技術》課程標準
- 最簡單封陽臺安全免責協(xié)議書
- 2024年危險化學品經營單位安全管理人員考試練習題(附答案)
評論
0/150
提交評論