Sending four byte commands To serial port

19 vues (au cours des 30 derniers jours)
Jason
Jason le 15 Oct 2021
Commenté : Jason le 15 Oct 2021
Whilst I am familiar using the Serialport objects in Matlab with text, Im not sure to how to use the protocol "four byte commands". I've spend a bit of time searching but didn't find any examples applicable to the "new" serialport object in the latest versions of Matlab.
In particular, what syntax would I use to send the command (in bold):
Command: 8112 0000
And then read the response (in bold) and extract the numerical value of yy
Response: 5512 00yy
Thanks for any pointers
  2 commentaires
Walter Roberson
Walter Roberson le 15 Oct 2021
are those hex values or decimal?
Jason
Jason le 15 Oct 2021
Thats the issue, I dont know

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 15 Oct 2021
cmd = [0x81 0x12 0x00 0x00];
write(YourPortObject, cmd, 'uint8');
response = read(YourSerialPortObject, 4, 'uint8');
if isequal(response, [0x55 0x12 0x00])
yy = response(4);
else
fprintf('unexpected response, got: %s\n', mat2str(yy));
end

Plus de réponses (0)

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by