Error: Simulink does not support the execution of function-call cycles
15 views (last 30 days)
Show older comments
I'm trying to execute this very simple sender/receiver logic with two charts and function calls. The issue is that Simulink detects a loop due input/output dependencies.
How can I solve this loop, since I can't use memory blocks with function call signals?
0 Comments
Answers (1)
Saurabh Gupta
on 31 Jan 2017
As the error suggests, function call cycles are not supported in Simulink. So you will have to modify your design to avoid creating a function call cycle.
If I understand correctly, you wish to model a sender and a receiver operating as per a certain clock, and you want certain state transitions in both sender and receiver to be interdependent on each other. You can create one Stateflow chart having two parallel states (one each for sender and receiver). You can then utilize the common clock signal event in combination with the internal events generated by the these states to perform transitions in their sub-states.
Refer to the following documentation pages for the related concepts.
https://www.mathworks.com/help/stateflow/ug/states.html
https://www.mathworks.com/help/stateflow/ug/execution-order-for-parallel-states.html
https://www.mathworks.com/help/stateflow/ug/parallel-and-state-examples.html
See Also
Categories
Find more on Complex Logic in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!