How can I take the datas from comport?

1 次查看(过去 30 天)
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);

回答(1 个)

Ameer Hamza
Ameer Hamza 2018-5-2
编辑:Ameer Hamza 2018-5-3
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).

类别

Help CenterFile Exchange 中查找有关 MATLAB Support Package for Arduino Hardware 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by