[心得] Embedded MATLAB Function使用方法
各位板友好,最近使用Embedded Matlab function,發覺遇到一些問題,
把問題都解決後終於可以跑了!野人獻曝,希望對需要的板友有一點幫助。
環境:使用版本為R2009b、Win7 64bit
1. 使用Embedded必須先指定"編譯器"
先在主視窗打mex -setup,再輸入y後會出現可選擇的編譯器。
若沒有請確定電腦有安裝:
(1)Microsoft Visual C++ 2008 SP1(通常包含在Visual Studio,可安裝
Visual Studio 2008 中文專業版)
(2)必要函式庫(請確定圖中皆有安裝http://imgur.com/YioQWMA

)
(3)Visual Studio 2008 SDK Version 1.0
安裝完後重啟電腦,同樣在主視窗打mex -setup,選y後理論上會有編譯器出現
若無請選n來手動選擇,在此選擇Microsoft Visual C++ 2008 SP1作為編譯器,
之後確定路徑即可。
2.寫Embedded MATLAB function
首先必須注意Embedded內的變數必須要指定型態(實虛數或double)、大小等等。
例如
function [a1,a2]=fcn(b1,b2)
%#eml
a1=0; %指定a1的初始值
a2=0; %指定a2的初始值
temp=0; %指定temp初始值
if b1~=0
a1=a1+temp; %若無指定temp此行會出錯
else
a2=a1;
end
比較詳細的說明可以參考http://goo.gl/hjJZI
3.事實上不同的MATLAB版本有不同的編譯器版本,詳細的版本可以上Mathworks網站去找,
或是google"Supported and Compatible Compilers+版本號"
大致上是如此,希望幫到有問題的板友!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.163.78
推
03/21 12:22, , 1F
03/21 12:22, 1F
推
03/23 17:18, , 2F
03/23 17:18, 2F
推
06/14 15:46, , 3F
06/14 15:46, 3F