Repeating variable names in code generation

4 次查看(过去 30 天)
I have charts of state flow. When generating a model in code I have a repetition of local variables. How can I avoid this?
An attempt to change the parameters of automatic assignment of names to local variables did not give a result
static boolean_T resultZC0;
static boolean_T resultZC1;
static boolean_T resultZC2;
static boolean_T resultZC0;
static boolean_T resultZC1;
  2 个评论
SergMariupol
SergMariupol 2025-3-26
编辑:SergMariupol 2025-3-26
The problem is the following.
If you have a charts state flow inside which is a simulink function and inside the simulink function and again state flows then local variables initialized in the latter are generated with duplicate names. It needs to be checked, but for now the output is like this
Altaïr
Altaïr 2025-3-27
Including a sample model along with images of it would greatly aid the community in providing you with better assistance!

请先登录,再进行评论。

回答(1 个)

Marie Anna NOVIELLO
When MATLAB Coder or Stateflow generates code for a model with numerous states or outputs, you may encounter repetitious local variable names such as resultZC0, resultZC1, and so on. This is a typical issue. This occurs because the program automatically generates variables with similar names but distinguishes them with suffixes such as 0, 1, etc., which might result in code repetition.
Try to use Data Store Memory in Stateflow
(resultZC(0) = (some_condition); % This replaces resultZC0
resultZC(1) = (some_other_condition); % This replaces resultZC1)

类别

Help CenterFile Exchange 中查找有关 Decision Logic 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by