Error: Simulink does not support the execution of function-call cycles
5 次查看(过去 30 天)
显示 更早的评论
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/160094/image.png)
How can I solve this loop, since I can't use memory blocks with function call signals?
0 个评论
回答(1 个)
Saurabh Gupta
2017-1-31
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
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!