Replacing RTW types with actual C-style types

I am new to the code generation capabilities of Simulink and have been working with both Simulink Coder and Embedded Coder. So, far I have been able to get the model to compile and running but I am not a huge fan of the embedded coder types. Is there a way to have the embedded coder put the standard C-types in there? It obvously knows what they should be as it typedefs them in the rtwtypes.h but this just seems redundant to me.
Thanks.

 Réponse acceptée

TAB
TAB le 9 Août 2012
Modifié(e) : TAB le 9 Août 2012

1 vote

You can not replace the datatype names generated by embedded coder with C-style type names.
But, if you don't like the type name generated by embedded coder (I think MISRA standard in not your friend), you can configure the embedded coder to replace the type names with your own type names.
For example you can configure embedded coder to generate My_u16 instead of uint16_T for unsigned int.
See Data Type Replacement pane in configuration window. Apart from this setting you need resolve the each type names with Simulink.AliasType object created in base workspace.

2 commentaires

craq
craq le 15 Juin 2016
I wish I were allowed to replace uint16_T with uint16_t or real_T with double, and then dispense with rtwtypes.h altogether. But Simulink complains that "double is a C keyword and cannot be used as a replacement type."
Hi,
You say "Apart from this setting you need resolve the each type names with Simulink.AliasType object created in base workspace."
How do I do that? How do I add Simuling.AliasType?
Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Simulink Coder dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by