How to hide code in S-Function block in simulink?

7 次查看(过去 30 天)
Using legacy tool and minGW compiler, i have compiled my c code (.c) and header file as well (.h). In result of same i get S-Function Source file (.c) and mex file.
Using mex file, i have created a S-Function block in MATLAB simulink.
Now as per my requirements, i wanted to hide the S-Function Source file (.c) which can be seen via S-Function block in MATLAB simulink.
ultimately my requirement is to, hide the code from user.
Saying all of above, i wanted to know:
  1. Am i able to hide code sing S-Function block in simulink?
  2. If Answer to first queston is yes, then how to do so?

采纳的回答

Fangjun Jiang
Fangjun Jiang 2020-3-30
You have your source code (in .c or .m or Fortran), compile them into a .mex (or .dll) file using mex() command, then you can use the S-function block in Simulink to use this function.
When you deploy it to other users, you can just copy the .mex or .dll file without including the source code. The user will be able to use the S-function but won't be able to view your source code.
  4 个评论
pramod jadhav
pramod jadhav 2020-4-6
Ok.
The .lib file you are talking about is to generated in MATLAB or Code composer studio?
If it is in MALTAB then how to do so?
And if from code composer studio then, will .lib file from code composer studio will work with MATLAB?
Thanks in advance.
Fangjun Jiang
Fangjun Jiang 2020-4-6
The .lib file is compiled by a C compiler, such as MS Visual C. The C language S-function is still C code. It can use the functions in the .lib file. The header file is to tell you what functions and their calling syntax.
If you generate the C code and want to use it for embedded control, make sure you provide the .lib file compiled by that embedded C compiler.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink Coder 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by