The error was in the cycle, I was trying to graph data that was no longer there. I solved it like this:
Why does it say that it exceeded the array if the array is larger than the data it receives? arduino-matlab
1 次查看(过去 30 天)
显示 更早的评论
Index exceeds matrix dimensions.
I am sending some data from arduino to matlab but, the error message ->>>Index exceeds matrix dimensions. Error in grafica (line 29 v2(muestras)=(valor(2));<<<-
that appears, it appears to me but after I graph the points, I mean ending the while cycle. I suspect maybe, that you are asking for data that does not exist in the matrix or something like that but I can't solve it. Technically it does not affect me because I manage to graph my points and that error mentions it to me until the end but, I would like you not to tell me that error anymore, how could I solve it? thank you very much
<<<<CODE>>>>>>>>>>>><
function arduinomatlab
n=21
v1=zeros(1,1000);
v2=zeros(1,1000);
delete(instrfind({'Port'},{'COM3'}));
s = serial('COM3','BaudRate',9600,'Terminator','CR/LF');
warning('off','MATLAB:serial:fscanf:unsuccessfulRead');
fopen(s);
muestras=1;
figure('Name','Captura');
xlabel('Tiempo')
ylabel('Aceleracion')
title('Acelerograma')
grid on
hold on
while 1<=n
ylim([0 240]);
xlim([0 0.5]);
valor=fscanf(s, '%f,%f')';
v2(muestras)=(valor(2));
v1(muestras)=(valor(1));
h=plot(v2(1:muestras),v1(1:muestras),'-')
drawnow
muestras=muestras+1;
delete(h)
end
fclose(s);
delete(s);
clear s;
end
采纳的回答
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!