How to send data from MATLAB to Arduino an?
Afficher commentaires plus anciens
Hi, I was wondering how do I send data from MATLAB , say a number ,5 to my Arduino board. The board contains some code in it. For simplicity lets assume it multiplies the incoming number with 4. The output , 20 ,should be displayed in the command window. Is this possible ? I know about a.roundTrip('data') function. But the one in my query is something different. (I work on R2010a)
2 commentaires
Josh
le 18 Déc 2012
I have this same exact question. Any answers?
Akarsh Sinha
le 29 Mar 2013
Réponse acceptée
Plus de réponses (4)
Nthai Papala
le 19 Nov 2015
0 votes
I need assistance. I need to send a binary data, say random bits (1 byte for example) from one computer to the other using LED and a phototransistor. The data must be generated in matlab and be sent over a serial port through arduino. I am using matlab 2015a and Arduino Uno and i need codes for both Arduino and Mat Lab.
Thanks in advance
3 commentaires
Walter Roberson
le 20 Nov 2015
Please open a new Question for this.
Busra AYDIN
le 25 Jan 2021
hi, did you solve your problem?
Reyhane Jalil
le 2 Sep 2021
hi i have same project ...can you send me detail of your work...reyhane.jalil.karim@gmail.com
Rouis Jihene
le 20 Juil 2017
Modifié(e) : Walter Roberson
le 20 Juil 2017
Hello,
I want to send a value from matlab to arduino,i tried this code but it doesn't work:
in Arduino:
void setup() {
Serial.begin(9600);}
void loop() {
if (Serial.available()) {
Serial.println(Serial.read());}
}
In matlab:
a=serial('com7');
val=20;
fopen(a);
fwrite(a,'%i',val);
fclose(a);
Do you have any solution ? Please help and thanks.
Walter Roberson
le 20 Juil 2017
Change
fwrite(a,'%i',val);
to
fprintf(a,'%i',val);
6 commentaires
Rouis Jihene
le 20 Juil 2017
same problem!!! :( In this code, should i precise RX and TX pins?
Walter Roberson
le 20 Juil 2017
No, it is not possible to specify the RX or TX pins for serial ports. RX and TX pins are part of the hardware interface level: you either wired them through the right way or you did not wire them through the right way.
The fact that you used COM7 suggests to me that you might be using a USB to serial convertor. If so then likely the correct wires have already been used.
Are you able to talk to the ardiuno if you use the arduino() command? https://www.mathworks.com/help/supportpkg/arduinoio/setup-and-configuration.html
Rouis Jihene
le 20 Juil 2017
Yes, i'am able to talk with Arduino using arduino() command, there is no problem in this point.
Rouis Jihene
le 20 Juil 2017
Do you know what's the most weird thing, that i'am able to send value from arduino to matlab without having any problem ! Do you believe in this ? Is it logical ?!
Walter Roberson
le 20 Juil 2017
Try
fprintf(a,'%d\n',val);
Rouis Jihene
le 20 Juil 2017
Same problem! Do you have any other solution?(using Bluetooth or something else)
Syahmi Noordin
le 29 Avr 2018
Modifié(e) : Syahmi Noordin
le 29 Avr 2018
0 votes
Hi, I want to ask about how to transfer more than one value from matlab GUI to arduino? I put 3 edit text functions in the Gui so I want the user to input value in each edit text function and those three values must be send to arduino for further calculation. Thanks.
1 commentaire
Walter Roberson
le 29 Avr 2018
get() the String property of the handles. fprintf(a, '%s %s %s\n', str1, str2, str3) where a is the arduino connection. This assumes that you want spaces between the strings and newline after the group of three.
You should probably do some sanity checking to be sure the strings are not empty and represent valid numbers.
Catégories
En savoir plus sur MATLAB Support Package for Arduino Hardware dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!