Unable to perform assignment because the size of the left side is 1-by-1 and the size of the right side is 0-by-0.
2 views (last 30 days)
Show older comments
if ~isempty(instrfind)
fclose(instrfind);
delete(instrfind);
end
A = zeros(64,1);
B = zeros(64,1);
C = zeros(64,1);
D = zeros(64,1);
Arduino=serial('COM3','BaudRate',9600);
fopen(Arduino);
writedata=uint16(500); %0x01F4
fwrite(Arduino,writedata,'uint16') %write datac
for i=1:64 %read 64 lines of data
A(i,:) = fscanf(Arduino,'%f');
end
Unable to perform assignment because the size of the left side is 1-by-1 and the size of the right side is 0-by-0.
Error in testing (line 15)
A(i,:) = fscanf(Arduino,'%f');
0 Comments
Accepted Answer
KSSV
on 26 Aug 2020
Try:
count = 0 ;
A = zeros([],1) ;
for i=1:64 %read 64 lines of data
temp = fscanf(Arduino,'%f') ;
if ~isempty(temp)
count = count+1 ;
A(count,:) = temp ;
end
end
3 Comments
More Answers (0)
See Also
Categories
Find more on MATLAB Support Package for Arduino Hardware in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!