Problem with running a Matlab code.

10 次查看(过去 30 天)
I am having problem with the code where when I first run the code, the outcome that I get is data in values and graph but when I want to re run the code for the second time and so on, the outcome that I get is zero data values and the graph is in straight line. I am using MATLAB R2019a.Can you please help me to solve this problem.

采纳的回答

Daniel Pollard
Daniel Pollard 2021-1-21
Clear your variables by putting the command
clear
at the start of your programme. It's almost certainly holding onto variables which affects repeated runs.
  1 个评论
WAN NOR NAZIRA MUSTAPA KAMAL
I have already do it but it still give the same results when I re run the codes. This is the codes:
%% setup
hold all
a = arduino('COM3', 'Uno');
mpu = i2cdev(a,'0x68'); %mpu adress is normally 0x68
writeRegister(mpu, hex2dec('B6'), hex2dec('00'), 'int16'); %reset
data = zeros(10000,14,'int8'); %prelocating for the speed
j = 1;
a1 = animatedline('Color',[1 0 0]);
a2 = animatedline('Color',[0 1 0]);
a3 = animatedline('Color',[0 0 1]);
legend('Accel_x','Accel_y','Accel_z')
%% loop
while(true)
x=1;
for i=59:72 % 14 Data Registers for Accel,Temp,Gyro
data(j,x) = readRegister(mpu, i, 'int8');
x = x + 1;
end
y = swapbytes(typecast(data(j,:), 'int16')) %if your system is big-endian remove the swapbytes function
addpoints(a1,j,double(y(1)));
addpoints(a2,j,double(y(2)));
addpoints(a3,j,double(y(3)));
j = j+1;
drawnow limitrate
end

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Just for fun 的更多信息

产品


版本

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by