1

I am attempting to send some information from MatLab to an Arduino Uno via Bluetooth with the following

MatLab program:

b=Bluetooth('HC-06',1);
fopen(b);
for i=1:1:15                                
  fprintf(b,i); 
  out(i) = fscanf(b,'%d');
end
fclose(b)

and Arduino program

int matlabval=0;

void setup()  {
    Serial.begin(9600);  
}

void loop() {
  if (Serial.available() > 0) {
    matlabval = Serial.read();
    Serial.println(matlabval); 
  }
}

the output of arduino is

1 10 2 10 3 10 4 10 5 10 6 10 7 10 8 10 9 10 10 10 11 10 12 10 13 10 14 10 15 10

The number 10 appears after each number. Why is that so?

Thanks in advance!

  • asciitable.com Decimal 10 is the ASCII code for a "New Line" so it appears your Matlab send code will add a "New-line" after each sent value. – Paul Apr 14 '16 at 8:15
1

As discussed in the comments, the "problem" seemed to be Matlab adding a "New Line" which is a decimal 10 in ASCII.

asciitable.com Decimal 10 is the ASCII code for a "New Line" so it appears your Matlab send code will add a "New-line" after each sent value. – Paul Apr 14 at 8:15

thank you very match the problem is solved – abbas hussien 5 hours ago

You might want to accept this answer so that this question gets "closed" and the site's statistics will be more accurate. It will also avoid this question being bumped up by the system and people reading into something that has already been solved.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.