How to get the same code generation for a whole Simulink model and referenced subsubsyem?

2 views (last 30 days)
I have a Simulink model simulating a system and its firmware. The firwmare is a referenced subsystem that I want to covert to C code and flash on my controller. Why when I generate the embedded code for the whole model I do not get the same interface for the referenced subsystem?
Having the same interface would allow me to test the simulation on the hardware before connecting inputs and outputs and testing the firmware only.

Accepted Answer

Mark McBroom
Mark McBroom on 12 Apr 2025
Have you tried making the sub-system atomic and then on the code generation tab, setting the desired interface for the function? Right-click the Subsystem block. From the context menu, click Block Parameters (Subsystem). From the Block Parameters: window, open the Code Generation tab.
If you are still not getting the desired code, try converting the referenced subsystem to a referenced model. In general referenced models are better than referenced subsystems for locking down the interface of the generated code.
  1 Comment
Enrica
Enrica on 14 Apr 2025
Thanks for the reply!
Yes, the block of the firmware is already set to be `traten as atomic`.
I tried to convert the referenced subsystem to a referenced model and added a Configuration reference to the same configuration that every block has. It seems to work fine now.
Thanks for your help!

Sign in to comment.

More Answers (0)

Categories

Find more on Deployment, Integration, and Supported Hardware in Help Center and File Exchange

Products


Release

R2024b

Community Treasure Hunt

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

Start Hunting!