send array from matlab using serial communication

13 views (last 30 days)
hello, i need your help.
i want to send array from matlab to arduino using serial communication
here is my code
s1=serial('com1','BaudRate',9600)
fopen(s1)
A=[1,0,1,0,1,0]
fwrite(s1,A)
but it seems didnt work, because my arduino shows nothing. and can u help me how to print data which i sent?
regards,
yefta (<mailto:yeftadp@gmail.com yeftadp@gmail.com>)

Accepted Answer

Walter Roberson
Walter Roberson on 18 May 2015
Notice that fwrite() sends binary data. And note that unless you tell MATLAB otherwise, constants such as 0 and 1 are double precision numbers, which occupy 8 bytes.
Possibly you want
fprintf(s1, '%d', A)
that would send the character string '1' '0' '1' and so on.
You might also want to send a newline to end the line:
fprintf(s1, '\n');
  4 Comments
Walter Roberson
Walter Roberson on 19 Apr 2017
In the case where you know ahead of time which values will be integer, then something like,
fprintf(s1, '%f\n%d\n%f\n%d\n', A)
Otherwise,
fprintf(s1, '%g\n', A)
Naseeb Gill
Naseeb Gill on 20 Apr 2017
Edited: Walter Roberson on 20 Apr 2017
Thanks @walter Roberson for your reply. I used fprintf(s1, '%g\n', A) as you suggested but didn't get any output. I can't paste my whole code here so I open a new question for the same which link I'm giving here. It will be helful for me if you suggest solution to my problem. https://in.mathworks.com/matlabcentral/answers/336393-send-numerical-values-from-matlab-to-arduino
Thank you

Sign in to comment.

More Answers (1)

Yefta Devian
Yefta Devian on 19 May 2015
hei Walter Roberson, you rock man
its work!! thankyou so much brother
regards,
yefta
  1 Comment
Saishka Naidoo
Saishka Naidoo on 27 Jan 2021
Please can you attach the matlab and arduino code for what you have done.

Sign in to comment.

Categories

Find more on MATLAB Support Package for Arduino Hardware 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!