How to call C custom variable or constant in Simulink Model

조회 수: 16 (최근 30일)
Mirko
Mirko 2020년 4월 30일
댓글: Mark McBroom 2020년 5월 4일
Good evening,
I'm looking for a method to call a variable or constant defined in a custom C code inside a simulink model.
I already use several functions with C Caller both in the model and in Stateflow.
Can someone help me?

답변 (1개)

Mark McBroom
Mark McBroom 2020년 5월 4일
not sure what you mean by "call", but one solution would be to put the variable inside a C function that simply returns the constant. Then use C Caller block to call this new C function.
Thanks.
Mark.
  댓글 수: 2
Mirko
Mirko 2020년 5월 4일
Hi Mark, thanks for the reply.
The idea you suggested to me is feasible, but I thought there was a different method to use a constant defined in the Header directly as a constant without having to use a function. Within stateflow this is possible just use in any formula the name of the variable defined in the .h file. Is there a Simulink block that allows me to do this? Could the Data Store Memory be useful?
Thanks
Mirko
Mark McBroom
Mark McBroom 2020년 5월 4일
If you want to hvae the external C file declare and define the variable, you can have the generated code use that external definition. This can be done by creating a Simulink.Parameter data object, and then setting it's storage class to be "Imported Extern". This will allow you to use the constant in Simulink, but the declaration and definition are done in an external, hand written C file.
This link to the doc gives more details:
Thanks.
Mark.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Simulink Functions에 대해 자세히 알아보기

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by