过度连续,我得到像
这样的值 23,2004,5000
24,5005,5060
25,6789,8907
如何将这些分成三列?
对于一列,例如:
25
24
26
我可以做到
clc;clear all;close all;
arduino=serial('COM4','BaudRate',9600);
fopen(arduino);
tic;
i=0;
while toc<120;
i = i+1;
time(i)= toc;
v(i)=fscanf(arduino,'%d');
plot(time,v,'r');
pause(.10);
end
fclose(arduino)
并将所有数据存储在v。如何为3列调整此代码?
答案 0 :(得分:1)
我没有连接到串口的任何东西,所以我不能测试这个,但在循环内试试:
str = fgetl(arduino);
num = textscan(str, '%f', 'Delimiter',','); num = num{1};
%# `num` should be a 3x1 vector of numbers
首先使用serial.fgetl从设备读取一行文本,然后使用textscan
或任何其他类似的字符串函数解析字符串。
答案 1 :(得分:-1)
这个怎么样:
A = cell2mat(textscan(arduino,'%d,%d,%d'))