百科知识

如题,matlab可不可以把串口采集的数据实时进行显示呢?

2012-10-09 15:07:241***
如题,matlab可不可以把串口采集的数据实时进行显示呢?如题,matlab可不可以把串口采集的数据实时进行显示呢?:可以的,简单一点的话会很简单,数据自己解析,一下只是个例子 function initCtrl(c?

最佳回答

  •   可以的,简单一点的话会很简单,数据自己解析,一下只是个例子 function initCtrl(com) global data t=cputime; data=[t;0]; global s_p; global fig; fig= plot(0,0,。
      。。 'EraseMode','background','MarkerSize',5); try s_p=serial(com); catch error('Can''t create serial object'); end %设定串口对象属性,波特率默认9600 s_p。
      BytesAvailableFcnMode='byte'; s_p。BytesAvailableFcnCount=1; s_p。 %打开串口 fopen(s_p); 设置了一个Callback,ctrlcom,根据接收到的串口数据来动态绘图 function ctrlcom(obj,event) global fig global data if('BytesAvailable'==event。
      Type) d=fread(obj,1,'int8'); t=cputime; m=[t-data(1,1);d]; data=[data m]; len=size(data,2); set(fig'XData',data(1,2:len),'YData',data(2,2:len)) drawnow axis([0 data(1,data(1,len) 0 255]); end 关闭端口,删除对象,释放资源: function closeCtrl() global s_p; fclose(s_p); delete(s_p); 希望能帮助你。
       。
    2012-10-09 15:18:16
  • 很赞哦! (277)