call MEX-Funcion in a simulink userdefined block
Show older comments
Hi, I have a MEX-function that have several inputs and 2 outputs. In addition I creat a simulink model whit several blocks. I need to call the MEX-Function whit these blocks in the model. how can I do it? It's important for me that arrive to minimum executing and calling time.
Answers (1)
Kaustubha Govind
on 30 Apr 2013
1 vote
MEX-functions can essentially be called just like any other MATLAB function. Please see the available MATLAB Function blocks to find a Simulink block that can be used to execute a MATLAB function.
6 Comments
Kaustubha Govind
on 1 May 2013
Omid: Considering that you don't have the actual source code to the MEX-function, I don't see any advantage in calling into the MEX-function via a C S-function - I would wager that the performance will be equivalent to using the MATLAB Function block. Btw, I think the standard way to call MEX-files from C is using mexCallMATLAB. I don't know how LoadLibrary needs to be configured to do this.
omid jab
on 2 May 2013
Kaustubha Govind
on 2 May 2013
Please look at the examples listed at the bottom of the documentation page that I previously linked for mexCallMATLAB.
omid jab
on 6 May 2013
Kaustubha Govind
on 6 May 2013
omid: You need to create mxArray's for both - use mxCreateString for the first and mxCreateDoubleScalar for the second.
Categories
Find more on Write C Functions Callable from MATLAB (MEX Files) in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!