- Right click on an input/signal signal (make sure you click on the signal - not inport/outport block)
- Select "Signal Properties"
- In the dialog window, enter a name (eg. U8_Num1) for "Signal Name"
- In the "Code Generation" tab, select storage class as ImportedExtern or ExportedGlobal (for ImportedExtern, you need to provide a header with the declarations)
- The generated datatype is the same as the one specified on the inport/outport block
ERT code generation customization
2 views (last 30 days)
Show older comments
I want to customize the code generated by ERT target, but i dont know where to start. One of my customization requirement is -- ERT packs the external inputs & outputs in structure in generated code as below
/* External inputs (root inport signals with auto storage) */
typedef struct {
uint8_T U8_Num1; /* '<Root>/U8_Num1' */
uint8_T U8_Num2; /* '<Root>/U8_Num2' */
} ExternalInputs_cmp;
/* External outputs (root outports fed by signals with auto storage) */
typedef struct {
uint16_T U16_ProductOut; /* '<Root>/U16_ProductOut' */
boolean_T B_CompRes; /* '<Root>/B_CompRes' */
} ExternalOutputs_cmp;
I want to use external ips and ops names (eg. U8_Num1 and U8_Num2) as global variable in my code. So generated code should process them as it is
uint8_T U8_Num1; /* '<Root>/U8_Num1' */
uint8_T U8_Num2; /* '<Root>/U8_Num2' */
I want to know which TLCs should be modified and how? Can someone help? Thanks.
0 Comments
Accepted Answer
Kaustubha Govind
on 8 Aug 2011
You shouldn't need to modify TLC files to do this. You only have to specify the right storage class for your input/output signals. See Interfacing Signals to External Code for documentation.
Here's what you should do:
3 Comments
Naini Dawar
on 14 Mar 2017
how can we create local variables. I need the variable to be declared locally in the same function rather than being the extern.
Guilherme T Silva
on 15 Feb 2019
Edited: Guilherme T Silva
on 15 Feb 2019
You can try the Localizable storage class:
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!