MATLAB Answers

reuse C code in simulink

2 views (last 30 days)
Ruoshi Zhang
Ruoshi Zhang on 29 Mar 2015
Answered: TAB on 6 Apr 2015
Hello every one,
is is possible that i call a c program from a stateflow chart, then I copy this chart, still in this same model, and execute both with out any conflict?
for example a C program like this
int var; // var is global
int myfunction(int n)
var = var + n;
return var;
i mean, treat them like two different entities and won't mess up with global variable.
  1 Comment
Ruoshi Zhang
Ruoshi Zhang on 29 Mar 2015
btw, also without rename the function in source code, I've got a big program :)

Sign in to comment.

Answers (2)

Jason Moore
Jason Moore on 3 Apr 2015
Yes, you can create s functions of your legacy C code that can be used in your simulink model. To do this the easiest way is to use the legacy code tool. This tool will allow you to create an s function compile it and create a block that can be used in your model. Here is the link to the documentation.
  1 Comment
Ruoshi Zhang
Ruoshi Zhang on 3 Apr 2015
I observe that if I use just stateflow block matlab also create s function, do you think they are same?

Sign in to comment.

TAB on 6 Apr 2015
Also you can integrate your C code directly in Stateflow chart for Simulation.
Check "Call Custom C Code Functions" on this page.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!