How to use signal name as variable name in generated code
Ältere Kommentare anzeigen
I have a simple model with an atomic subsystem block.
the signal after the subsystem "Function" is called "x" in the model.
The generated code for the step function is
void untitled1_step(void)
{
real32_T rtb_Gain;
/* Outputs for Atomic SubSystem: '<Root>/Function' */
/* Inport: '<Root>/In1' */
rtb_Gain = untitled1_Function(untitled1_U.In1);
/* End of Outputs for SubSystem: '<Root>/Function' */
/* Outport: '<Root>/Out2' incorporates:
* Bias: '<Root>/Bias'
*/
untitled1_Y.Out2 = rtb_Gain + 2.0F;
}
Embedded coder generate rtb_Gain variable.
However I would like to generate the x variable instead, so that the code became:
void untitled1_step(void)
{
real32_T rtb_Gain;
/* Outputs for Atomic SubSystem: '<Root>/Function' */
/* Inport: '<Root>/In1' */
x = untitled1_Function(untitled1_U.In1);
/* End of Outputs for SubSystem: '<Root>/Function' */
/* Outport: '<Root>/Out2' incorporates:
* Bias: '<Root>/Bias'
*/
untitled1_Y.Out2 = x + 2.0F;
}
Is there any general setting that I can activate to do this?
2 Kommentare
Walter Roberson
am 20 Dez. 2025
If you assign to x, why are you later using rtb_Gain + 2.0F instead of x + 2.0F ?
Andrea Carignano
am 20 Dez. 2025
Antworten (1)
Double click the signal line and set the signal name as 'x'. That might be sufficient for your need.
Currently, the 'x' shown in your model looks like an annotation, not the signal name.
For more control, select the signal line, right click, select "Property" and set the signal line property.
One of the ways is to check "Name must resolve to signal object" and create a Simulink.Signal object in base workspace. Check the document for Simulink.Signal to learn more.
x=Simulink.Signal
1 Kommentar
Andrea Carignano
am 19 Dez. 2025
Bearbeitet: Andrea Carignano
am 19 Dez. 2025
Kategorien
Mehr zu Deployment, Integration, and Supported Hardware finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!