How can I take the datas from comport?

1 view (last 30 days)
bayram özmen
bayram özmen on 2 May 2018
Edited: Ameer Hamza on 3 May 2018
I have a code in ardunuio. Also this is just an example. that code will write the datas to comport. I want to read the integer datas. So ı am trying to read U firstly and then ı am starting to take integer data but ı could not take. How can I take like that?
comport = serial('COM3','BaudRate',9600);
fopen(comport);
for i=1:100
angles=fscanf(comport);
if(angles=='U')
phi=fscanf(comport,'d');
theta=fscanf(comport,'d');
end
end
fclose(comport);
delete(comport);

Answers (1)

Ameer Hamza
Ameer Hamza on 2 May 2018
Edited: Ameer Hamza on 3 May 2018
Instead of fscanf(), try using
oneByte = fread(comport, 1);
this will read one value from the serial buffer. Also, you should note that since you are using Serial.println, the Arduino will also send newline character (value 10 in ASCII).

Categories

Find more on MATLAB Support Package for Arduino Hardware in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!