Dans mon projet, je suis responsable de la migration du code MATLAB vers C++. Le code ci-dessous fait référence à la communication série entre un ordinateur et un microcontrôleur. La fonction CreatePackage
génère un package qui est ensuite envoyé au microcontrôleur à l'aide de la fonction fwrite (série) de MATLAB.Quel est l'équivalent C++ de ce code MATLAB?
function package = CreatePackage(V)
for ii = 1:size(V,2)
if V(ii) > 100
V(ii) = 100;
elseif V(ii) < -100
V(ii) = -100;
end
end
vel = zeros(1, 6);
for ii = 1:size(V,2)
if V(ii) > 0
vel(ii) = uint8(V(ii));
else
vel(ii) = uint8(128 + abs(V(ii)));
end
end
package = ['BD' 16+[6, vel(1:6)], 'P' 10 13]+0;
Et puis, pour envoyer le paquet:
function SendPackage(S, Package)
for ii = 1:length(S)
fwrite(S(ii), Package);
end
Comment puis-je créer un tableau/vecteur en C++ pour représenter la variable package
utilisée dans le code ci-dessus Matlab? Je n'ai aucune expérience avec MATLAB donc toute aide serait grandement appréciée.
Merci!
Une bonne référence C++ montrera comment utiliser 'std :: vector'. –
Une recherche sur Internet pour les mots-clés "C++ matlab array vector" devrait montrer quelques exemples pertinents. –
Mon principal doute est de savoir quel type serait ce vecteur ... integer, char? – leandrocoutom