Send a hex block of data Serial port from matlab
16 views (last 30 days)
Show older comments
Michael Mathew
on 7 Oct 2013
Commented: Ferran Gonzalez
on 8 Nov 2022
Hi,
I have a problem, I have a serial device which should addressed using a block of data in specific format. The data I am trying to send is [7E 00 12 10 00 00 13 A2 00 40 8B 63 85 08 59 00 00 00 00 00 1A 0C], all in hexadecimal. How to send it in a single go? The command is correct since I am able to send the same via a serial terminal program and the device responds.
I can do the same using a arduino by the following command: Serial.write(array,sizeof(array));
How to do the same kind in matlab?
Kindly please help.
Thanks in advance, Mike
0 Comments
Accepted Answer
Walter Roberson
on 7 Oct 2013
fwrite(fid, array)
3 Comments
Walter Roberson
on 8 Oct 2013
You do NOT want to transmit hex. You want to transmit 8 bit binary. The hex you see is from the monitoring program displaying the binary that way.
fwrite(s, h)
Have you set the serial port Terminator property to no terminator, and the BytesAvailableFcnMode to 'byte' ? And possibly the InputBufferSize as well?
More Answers (2)
Jan
on 7 Oct 2013
"All in hexadecimal" is not clear. You cannot store values in hexadecimal format like e.g.:
a = [7E 00 12 10 00 00 13 A2 00 40 8B 63 85 08 59 00 00 00 00 00 1A 0C]; % ERROR!
You would need e.g. a string (char vector):
a = ['7E', '00', '12', ...
But to send this, you would convert it to UINT8 values at first, most likely. So please explain this detail.
2 Comments
Jan
on 8 Oct 2013
"It does not work" is not useful to explain the occurring problems. Please tell us, what happens.
Michael Mathew
on 8 Oct 2013
3 Comments
Kritika Vashishtha
on 8 May 2020
Hey Michael, Can you post the answer. The link that you shared no more exists.
Ferran Gonzalez
on 8 Nov 2022
Hi @Yonathan @Kritika Vashishtha, you can read an archived version of the link here: https://web.archive.org/web/20151224041528/https://in.mathworks.com/matlabcentral/newsreader/view_thread/79757
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!