How can you separate incoming serial data?
11 次查看(过去 30 天)
显示 更早的评论
I have incoming serial data from an Arduino board that update continuously. The data is separated by questions marks (?). How would I go about reading the data in MATLAB and separating it into a (12x1) column vector so I can call an index of that vector? I have tried fscanf() but have been unable to get the results I want.
From Arduino:
152?-9?215?-669?2541?1273?-141?27?-452?20.30?97242.00?345.62? ect
delete(instrfind)
s=serial('COM4','BaudRate',9600); %start serial port to arduino
s.ReadAsyncMode = 'continuous';
fopen(s); %open port
while (s.Status == 'open')
C=fscanf(s, '?');
C
if(s.Status ~= 'open')
break;
end
end
0 个评论
采纳的回答
Matthias
2013-4-20
I don't have an Arduino, so I couldn't test it. But how about that:
c_str=regexp(C,'?','split');
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File 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!