How can i call a state machine which is inside a function.Function is called iteratively?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi ,
I want to call a function inside a loop. The function has a Statemachine in it.
Below is the Pseudo "C" code for which the equivalent stateflow model is required.
for(i=0;i<2;i++)
{
CallStatechart(i);
}
CallStatechart(j)
{
case A:......out[i]=...;
case B:......out[i] =...;
case C:......out[i] =...;
}
2 comentarios
Walter Roberson
el 14 de Sept. de 2018
State machines in C are usually more like
current_state = 0;
for (i=0; i<2; i++)
{
current_state = CallStatechart(current_state, i);
}
int CallStatechart(int current_state, int statenum)
{
switch(current_state)
{
case A: ....; new_state = ...; break
case B: ....; new_state = ....; break;
...
}
return new_state;
}
This permits reactions to be conditional on the current state, and permits the state to be changed in non-linear ways.
Respuestas (1)
Muthukumar Ganesan
el 1 de Ag. de 2022
Hi,
This requirement can be achieved by implementing the statemachine inside the "For Iterator Subsystem" in simulink. Please refer to the attachment.
Thanks.
0 comentarios
Ver también
Categorías
Más información sobre Stateflow Charts 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!