it is a problem of data types ?

2 views (last 30 days)
i heave this error whit the code, i don´t know why, i suposed is a problem whit the datatype but i don´t know why this is the error: In an assignment A(I) = B, the number of elements in B and I must be the same. Error in ADC_serialPort_K64F_V6 (line 30) v(ctr) = (value_mf); oohh, i use a serial cmunication, 8 bits, when the voltaje is higher than 0 volts, it works, example if a conected 3 volts in the microcontroller adc, it works, but when the voltaje is under the 0 volts or close (i suposed close) it doesn´t work, thank you. this is the code:
while ctr <= i
value_mf = fscanf(Datos,'%d',1) ;
v(ctr) = (value_mf);
v(ctr) = (v(ctr)*3.3/256);
if v(ctr)>3.3
v(ctr) = v(ctr - 1);
end
ctr=ctr+1;
end

Accepted Answer

Roger Stafford
Roger Stafford on 23 Apr 2015
The problem here is that 'ctr' of v(ctr) is not the same size as whatever the output of 'fscanf' is at that point, so matlab doesn't know how to proceed with the assignment. I am guessing 'ctr' is a scalar quantity and 'fscanf' is outputting something with multiple elements. If so, how is matlab to stuff many elements into a single element?
  1 Comment
Ricardo  De Santiago
Ricardo De Santiago on 24 Apr 2015
oohh, in effect, then i can use another variable, or convert the output of fscanf? well, it´s helpful reply, thank you

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!