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

6 visualizaciones (últimos 30 días)
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;
}

Respuesta aceptada

Babak
Babak el 8 de Ag. de 2012
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 comentarios
Chris
Chris el 9 de Ag. de 2012
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.

Iniciar sesión para comentar.

Más respuestas (2)

Kaustubha Govind
Kaustubha Govind el 9 de Ag. de 2012
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 el 9 de Ag. de 2012
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.

Categorías

Más información sobre Simulink Coder en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by