Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

How do I group signal definitions per their data types in generated code?

1 Ansicht (letzte 30 Tage)
mayuresh
mayuresh am 18 Dez. 2012
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
I am generting C code from a model which contains signals with different data types like integers, characters, words etc.
When generating code, I would like to group signal definitions all signals of same type together.
Foe example:
unit8 var1; uint8 var4;
uint16 var2; uint16 var3;
uint32 var5;
How can I achieve this?

Antworten (1)

Jonathan
Jonathan am 18 Dez. 2012
The class() function can reveal what type of data is being input. To sort it you could check the class of the input and store it in a vector. This code is assuming your "input" is from an outside source so this is treated like a separate function call. If the input is internal then you could also use a for-loop around the switch-case
global array8 array16 array32
input = uint8(12);
switch class(input)
case 'uint8'
array8(end+1) = input;
case 'uint16'
array16(end+1) = input;
etc.
that's just a demo, you'd have to include
array8 = []
and stuff for that to be functional. If you're more specific we could help you out a bit better, but that should get you started :)
  1 Kommentar
mayuresh
mayuresh am 19 Dez. 2012
Thanks for the answer Jonathan. However, I would like these variables to be grouped directly in the generated C file.
So, if my model uses 3 UByte signals, 3 Uint signals , then when RTW generates C code I would like their declarations to be grouped together.

Community Treasure Hunt

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

Start Hunting!

Translated by