- Open unit delay block and set the initial condition with name lets say "myParam" and its value to be "Simulink.Parameter(100)”. Click OK.
- On the Code Generation tab, click the Code Mappings editor, set Storage Class of "myParam" to "Define". Click OK.
- To build the model and generate code, press Ctrl+B.
MACRO Expansion in Targetlink Code
7 ビュー (過去 30 日間)
古いコメントを表示
I am trying to use a unit delay block where the initial condition of delay block is a macro, In the production code of Targetlink the Macro is automatically expanded to the value, i dont want that macro to expand in generated code. The block is inside a Lib file, so the entire code is not generated, only initial values are generated in main code.
0 件のコメント
採用された回答
Varun
2023 年 8 月 28 日
Hi Sulagana,
I understand the issue that the macro used to set initial condition of delay block is being expanded in the generated code.
In order to used it as a macro only without being expanded, you can follow below steps:
You can refer this documentation for more info: https://in.mathworks.com/help/ecoder/ug/macro-definitions-define.html
3 件のコメント
Champuram Madhu
2023 年 10 月 3 日
Hi
You could try creating a TargetLink DD variable with MACRO class.
In that case, it should be generated as a MACRO irrespective of the location
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!