亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Matlab接口技術(shù)應(yīng)用研究

        2016-03-14 19:13:57寶雞職業(yè)技術(shù)學(xué)院電子信息工程系721000
        電子測試 2016年7期
        關(guān)鍵詞:接口技術(shù)

        李 雯(寶雞職業(yè)技術(shù)學(xué)院電子信息工程系,721000)

        課題名稱:省職教學(xué)會的課題《基于VC和MATLAB的仿真實驗平臺的設(shè)計》課題編號:SZJYB2015033

        ?

        Matlab接口技術(shù)應(yīng)用研究

        李 雯
        (寶雞職業(yè)技術(shù)學(xué)院電子信息工程系,721000)

        課題名稱:省職教學(xué)會的課題《基于VC和MATLAB的仿真實驗平臺的設(shè)計》課題編號:SZJYB2015033

        摘要:Matlab是一種面向科學(xué)和工程計算的高級語言,可以勝任大多數(shù)的工作,但仍然具系統(tǒng)不友好性 的弊端,將Matlab與外部程序進(jìn)行混編設(shè)計,可以有效的改善這一狀況,本文介紹了混合編程的多種方法,希望對從事程序開發(fā)讀者有所幫助。

        關(guān)鍵詞:Matlab;接口技術(shù);方式

        Matlab作為應(yīng)用范圍比較廣泛的數(shù)學(xué)軟件,是一個相當(dāng)完整的系統(tǒng),它向用戶提供了一個功能十分完善的程序設(shè)計和數(shù)據(jù)處理集成環(huán)境,用戶可以根據(jù)需要方便地編寫和擴充新的函數(shù)庫。它以矩陣運算為基礎(chǔ),極少的代碼即可實現(xiàn)復(fù)雜的功能。但是MATLAB的M文件作為一個文本文件,不利于算法的保密,而且訪問硬件的能力差,執(zhí)行效率也不高,這時候就需要研究MATI.AB接口技術(shù),通過外部程序來實現(xiàn)對MATLAB的調(diào)用。如何實現(xiàn)其與外部程序的混合編程設(shè)計成為計算機領(lǐng)域關(guān)注的重點課題,現(xiàn)階段有兩種方法來解決這一問題:一是在MATLAB中調(diào)用其它語言編寫的代碼;二是在其他語言程序中調(diào)用MATLAB。這些技術(shù)的應(yīng)用使MATLAB的使用領(lǐng)域在不斷的擴展,給開發(fā)者提供了靈活多變的解決問題的途徑。

        1 在Matlab中調(diào)用C/C++程序的方式

        在MATLAB開發(fā)環(huán)境中調(diào)用C/C++等外部程序離不開編譯器的支持,編譯器存在的價值就是將C/C++代碼編譯為MEX文件,這樣就可以將程序執(zhí)行下去。MEX文件是Matlab調(diào)用C/ C++程序的主要形式,它包含有Matlab解釋器,以動態(tài)鏈接庫的形式而存在,由于數(shù)據(jù)庫Matlab版本有所不同,因而MEX文件的名稱和大小也是不同的,有的以·dll命名,有的以*·mexw 32形式而存在,還有以*·mexw64的名稱存在的,無論是以何種形式存在的MEX文件都有著裝載動態(tài)鏈接和執(zhí)行動態(tài)鏈接的功能,mwlndex,mwsize,mxchar,mxlogical,mxClasslD,mxComplexity是其語言接口的代表數(shù)據(jù)類型,它通過用C/C++語言編寫代碼,然后通過Matlab編譯器將其編譯為MEX文件。而要想用C/C++語言編寫MEX文件需要解決的一個首要問題是將mexFunction函數(shù)中的Matlab與C/C++代碼模塊的數(shù)據(jù)實現(xiàn)順利交互,而要解決這一點就需要充分了解Matlab與C/C++代碼的結(jié)構(gòu)與優(yōu)勢。Matlab中的數(shù)據(jù)類型可以用mxArray來描述,包括其中所有輸入和輸出的參數(shù),而將C/C++語言的基本數(shù)據(jù)轉(zhuǎn)換為mxArray類型就成為解決Matlab與C/C++代碼模塊進(jìn)行交互的關(guān)鍵。而Matlab中所包含的API函數(shù)使這一問題的解決變成了可能,在Matlab與C/C++混合編程時候經(jīng)常需要調(diào)用Matlab提供的API函數(shù),其中以mx開頭的Matlab API函數(shù)主要是提供對mxArray進(jìn)行操作的函數(shù),而以mex開頭的Matlab API函數(shù)則提供Matlab環(huán)境后臺操作的函數(shù)。其中,以mex開頭的Matlab API函數(shù)只能在MEX文件中應(yīng)用,以mex開頭的Matlab API函數(shù)可以在其他應(yīng)用如從C/C++調(diào)用Matlab程序中應(yīng)用。

        Matlab中調(diào)用C/C++函數(shù)的另一種方式,即采用%#external語法結(jié)構(gòu)。假定在Matlab函數(shù)中需要調(diào)用一個和數(shù)據(jù)采集設(shè)備密切相關(guān)的底層C/C++函數(shù)以獲得該設(shè)備采集的數(shù)據(jù)。此時,可以首先用M文件完成整個程序,需要調(diào)用的C/C++函數(shù)暫時用M函數(shù)代替,并用%#external標(biāo)記。

        2 在C/C++中調(diào)用Matlab的方式

        使用Matlab編譯器編譯的文件,生成可獨立運行的可執(zhí)行文件,為用戶提供一種最簡單的發(fā)布Matlab程序的方法。在C語言的函數(shù)中可以調(diào)用*、m函數(shù)經(jīng)過Matlab編譯器編譯后的函數(shù)。以mrandplot、m生成函數(shù)。

        (1)編譯mrand.m文件,生成mrandplot函數(shù)的接口函數(shù)mlfmrandplot函數(shù)。在C/C++語言函數(shù)中可以通過調(diào)用mlfmrandplot函數(shù)來達(dá)到調(diào)用mrandplot函數(shù)的目的。

        (2)調(diào)用 mrandplot函數(shù):Matlab和C/C++混合編程中經(jīng)常要用到mx-API函數(shù),本例中調(diào)用

        mxcreate Double Matrix API 函數(shù)用于構(gòu)造 mlfmrandplot 函數(shù)的輸入?yún)?shù)。

        C/C++調(diào)用Matlab程序的第二種方式可以通過 Matlab 引擎直接執(zhí)行 Matlab語言。Matlab程序中蘊含著大量的數(shù)學(xué)計算方式,當(dāng)用戶需要使用某一公式進(jìn)行數(shù)值計算時就可以通過Matlab引擎調(diào)用Matlab函數(shù),為用戶的計算服務(wù)。大量的API函數(shù)是Matlab得以順暢運行的基礎(chǔ),通過這些API函數(shù)用戶只需將數(shù)據(jù)輸入到Matlab中,Matlab引擎就可以將人工難以計算出來的數(shù)據(jù)輕松的計算出來,界面部分由C/C++語言構(gòu)成,而這一切的實現(xiàn)都離不開Matlab環(huán)境的支持。

        C/C++調(diào)用 Matlab 程序的第三種方式:將 Matlab程序編譯為C/C++ 動態(tài)鏈接庫,然后在C/C++程序中調(diào)用。通過Matlab編譯器的mcc命令,可以將Matlab *·m文件直接編譯為動態(tài)鏈接庫以供 Visual C++調(diào)用。

        3 結(jié)束語

        Matlab 的接口技術(shù)可以讓使用者不只是局限于一種計算工具,這些接口技術(shù)可以幫助使用者更好的利用手中的工具,結(jié)合多個工具的去處,找到解決實際問題的優(yōu)秀方案。

        參考文獻(xiàn)

        [1]劉維著. 精通Matlab與c/c++混合程序設(shè)計[M]. 北京航空航天大學(xué)出版社

        [2] 張亮,王繼陽編著. MATLAB與c/c++混合編程[M]. 人民郵電出版社出版

        [3]呂獻(xiàn)忠. 匯編與C語言混合程序設(shè)計方法研究[J]. 電腦編程技巧與維護(hù),2015,12:37-38.

        李雯,女,陜西扶風(fēng)人,1982年出生,碩士,高校講師,主要研究方向:電氣控制系統(tǒng)設(shè)計與仿真。

        Matlab interface technology application research

        Li Wen
        (Baoji professional technology institute,Department of electronic and information engineering,721000)

        Abstract:Matlab is a high-level language for scientific and engineering calculation, and can do most of the job,but still with the deficiencies of the system is not friendly,external program with the Matlab mix design,can effectively improve the situation,this paper introduces the mixed programming of a variety of methods,hope to help readers engaged in application development.

        Keywords:Matlab;Interface technology;way

        作者簡介

        猜你喜歡
        接口技術(shù)
        科技部:發(fā)布腦機接口倫理指引
        基于MOOC+SPOC+翻轉(zhuǎn)課堂的“微機原理與接口技術(shù)”混合教學(xué)模式研究
        論《單片機原理與接口技術(shù)》跨校修讀模式
        高等學(xué)校計算機專業(yè)課程教學(xué)改革實踐——以匯編語言與接口技術(shù)課程為例
        計算機教育(2020年5期)2020-07-24 08:52:50
        腦機接口技術(shù)可幫助人類克服殘疾
        電力系統(tǒng)全網(wǎng)一體化暫態(tài)仿真接口技術(shù)
        電子制作(2018年14期)2018-08-21 01:38:28
        項目驅(qū)動式微機原理及接口技術(shù)教學(xué)方法
        電子制作(2017年7期)2017-06-05 09:36:13
        中文GIS自然語言接口技術(shù)研究
        天地一體化網(wǎng)絡(luò)和空中接口技術(shù)研究
        機電一體化系統(tǒng)中的接口技術(shù)分析
        中文字幕日本一区二区在线观看| 国产精品久久久久影院嫩草| 两个人看的www中文在线观看| 久久青草亚洲AV无码麻豆| 蜜桃码一区二区三区在线观看| 国产内射一级一片内射视频| 天堂无码人妻精品av一区| 亚洲天堂第一区| 永久免费在线观看蜜桃视频 | 久久久久久久尹人综合网亚洲| 久久久精品国产老熟女| 国产在线第一区二区三区| 国产成人免费一区二区三区| 亚洲成在人线电影天堂色| 亚洲av色精品国产一区二区三区 | 日本看片一区二区三区| 亚洲va视频一区二区三区| 四虎国产精品永久在线国在线| 欧美伊人网| 男女啪啪免费视频网址| 国产精品沙发午睡系列| 三级特黄60分钟在线观看| 亚洲VA欧美VA国产VA综合| 青青草视频视频在线观看| 强开少妇嫩苞又嫩又紧九色| 无码h黄动漫在线播放网站| 色优网久久国产精品| 亚洲女人的天堂网av| 亚洲av无码专区在线播放| 日日摸夜夜欧美一区二区| 一区二区黄色素人黄色| 在线观看人成视频免费| 日韩好片一区二区在线看| 综合图区亚洲另类偷窥| 在线天堂av一区二区| 男女后进式猛烈xx00动态图片| 亚洲片一区二区三区| 国产av精品一区二区三区视频| 免费观看成人欧美www色| 亚洲av无码乱观看明星换脸va | 成人在线视频亚洲国产|