What are the "Real-Time Model" objects for in simple code generated by embedded coder

6 次查看(过去 30 天)
I have gotten a really simple model (just multiplication of 2 values) and have been able to autogenerate the Step function using the embedded coder. When I examine the code that is generated it is relatively good but there are a couple of “real-time model” variables that are never used in the functions that are defined. I was wondering what these are being generated for. I really only expected to get the .step function with the single multiply and don’t need this extra overhead or code in the generated source. The lines in question are in bold below.
/*
* File: MultiplyVals.c
*
/* Real-time model */
*RT_MODEL_MultiplyVals MultiplyVals_M_;
RT_MODEL_MultiplyVals *const MultiplyVals_M = &MultiplyVals_M_;*
/* Model step function */
void untitled_custom(real_T *arg_In1, real_T *arg_In2, real_T *arg_Out1)
{
/* Outport: '<Root>/Out1' incorporates:
* Inport: '<Root>/In1'
* Inport: '<Root>/In2'
* Product: '<Root>/Product'
*/
*arg_Out1 = *arg_In1 * *arg_In2;
}

采纳的回答

Babak
Babak 2012-8-8
extra code is generated according to the "Configuration Parameter"'s setting. For example, Go to the Interface pane and check if you have checkmarks for absolute, complex numbers,...
  2 个评论
Chris
Chris 2012-8-9
That is essentially where I found my final solution: In Configuration Parameters -> Code Generation -> Interface there is a checkbox labeled "Suppress error status in real-time model data structure.

请先登录,再进行评论。

更多回答(2 个)

Kaustubha Govind
Kaustubha Govind 2012-8-9
Are you using anything other than a plain Multiply block in your model? Model references, S-functions, etc.? Also, do you use ert.tlc as the System Target file, or something else? If you're not using any of these, it might be worth reporting this to MathWorks Tech Support with the reproduction model.

Chris
Chris 2012-8-9
Thanks for your guys help. I actually ended up finding out the solution to my question by continuing to work through the Simulink Coder Options boxs. In Configuration Parameters -> Code Generation -> Interface there is a checkbox labeled "Suppress error status in real-time model data structure. As soon as I checked this box those useless objects were removed from the generated code.

类别

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