Matlab serial command to read binary data
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want to communicate with an Arduino board using Matlab through a serial port. The Arduino board will transmit 8 bytes of BINARY data every 20 ms once it receives a 1. The transmission will stop if the Arduino receives a 0.
The following commands in an m-file work as expected when I step through them in the debug mode. However, the transmission stopped immediately when I ran the m-file. The s.BytesAvailable is zero. It looks like the pause command has not properly executed. Why was wrong? How can I fix it? Thanks.
s = serial('COM15','BaudRate',115200);
fopen(s);
fwrite(s,1); %ask Arduino to send data
tic;pause(3);toc %wait for several data to arrive
fwrite(s,0); %ask Arduino to stop sending data
fprintf(1,'%i\n\n',s.BytesAvailable)
fclose(s)
2 Kommentare
Pritesh Shah
am 17 Okt. 2014
Check following thing. 1. Did u connect to hardware to com15? (Go to device manager and click on port)
2. set(s, ’BaudRate’, 4800); % Set this Baud Rate
Antworten (1)
Sean de Wolski
am 17 Okt. 2014
You might be interested in doing this with the support package directly rather than using the serial port yourself
Siehe auch
Kategorien
Mehr zu Arduino Hardware finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!