function callback(s,BytesAvailable,p)
global i;
global t;
global x;
global m;
% p = plot(t,m,...
% 'EraseMode','background','MarkerSize',5);
out = fscanf(s) %read data from s
data = str2num(out);
if data>-2 & data < 2 %detect if data is legal
% disp('*******data comes! \n');
t=[t 0.01*2*pi*i]; %0 0.1 0.2 0.3.. %Matrix 1*(i+1), column is increasing
m=[m data]; %Matrix 2*(i+1), 2row, i+1 column.
%http://blog.csdn.net/sonictl
%set(p(1),'XData',t,'YData',m(1,:))
%set(p(2),'XData',t,'YData',m(2,:))
set(p,'XData',t,'YData',m(1,:))
%http://blog.csdn.net/sonictl
drawnow
x = x + 3.6/360*2*pi; % x = x+0.1
axis([x x+2*pi -1.5 1.5]);
pause(0.1);
i = i+1;
end
%http://blog.csdn.net/sonictl end
MATLAB动画显示串口数据【实例】
经过几天的学习,现在能实现串口数据的实时p

通过学习,已掌握在MATLAB中接收串口数据并进行实时plot的方法,同时还记录数据到变量中。教程包含基础版和升级版,涉及数据判断及动态绘图的回调函数。
&spm=1001.2101.3001.5002&articleId=8462879&d=1&t=3&u=1be819d6854546fcb0c2ecbd647b0a35)
3062

被折叠的 条评论
为什么被折叠?



