How do I add character to a string in Simulink/Simevents?

Is there a way to append characters from array in Simulink/Simevents? I have tried to add characters to an empty string using strcat and append in Simulink/Simevents, but I am getting the following error:
Incorrect size for expression '<output of strcat>': expected [1x0] but found [1x1].
Incorrect size for expression '<output of append>': expected [1x0] but found [1x1].
Is there a way to make this work? or is there another way to append characters to an empty string in Simulink/Simevents? The following is the code I am using. Thank you.
memory is an array with 10 0s.

Réponses (1)

Simulink doesn't like the fact that the variable s grows in length. Try something like this:
.....
s = repat(' ',1,10); % create char array of max size
s_counter = 0;
for c=1:length(entity.memory)
if(entity.memory( c ) ~= 0
s_counter = s_counter + 1;
s(s_counter) = entity.memory( c );
end
end
fprintf('%s\n', s);

Catégories

En savoir plus sur Discrete-Event Simulation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by