fscanf in simulink?

3 vues (au cours des 30 derniers jours)
raymon saadalla
raymon saadalla le 21 Juin 2017
I receive some strings in UDP. I can see them using fscanf. But I would like to have them in Simulink environment. I tried stream input block, but it seems that it's different from fscanf. Is there any way that I can monitor the strings, received via UDP, in Simulink? they are ascii value how can i read them in simulink

Réponses (1)

Walter Roberson
Walter Roberson le 21 Juin 2017
Use a UDP receive block, for which the output type has been set to (or left at) uint8. Pass the output to a MATLAB Function Block. Inside the function block, char() the byte vector. You can sscanf() the resulting string.
  1 commentaire
raymon saadalla
raymon saadalla le 21 Juin 2017
Modifié(e) : raymon saadalla le 21 Juin 2017
thanks, so i do something like that and this is my function block, but I keep getting not enough arguments error ? any idea why is that.
function output = func(data)
coder.extrinsic('sscanf')
x=sscanf(data)
channel0= x(20:23)
channel0 = strtrim(channel0);
channel0 = str2double(double(channel0))
output = coder.nullcopy(zeros(size(data)));
output = channel0;
end

Connectez-vous pour commenter.

Catégories

En savoir plus sur Block Libraries dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by