Hola tengo un problema con el puerto serie. Guardo los datos recibidos en un string pero al mostrar los datos del string, el length nos indica que ese string tiene 2 caracteres mas. Supongo que esos 2 caracteres corresponden a \n y eso lo tengo solucionado con el while( ch != '\n').
//---------------------------------------
// RECIBIR DATOS
//---------------------------------------
//Esta funcion nos entrega el valor en float del termometro solicitado.
void RecibirDatos (){
int numChar = 0; //Numero ASCII del caracter.
while (Serial.available()>0){
if (numChar!=13 && numChar!=10 && numChar!=32){
char ch = ' '; //Variable donde se guarda el char que se recibe por serial.
String mensaje ="" ; //Variable para guardar el texto pasado por serial.
while( ch != '\n'){ //leemos hasta el retorno de carro o enter.
ch = Serial.read(); //Lee un caracter.
Serial.println(ch); //Imprime el caracter "ch" recivido por serial.
mensaje = mensaje + ch ; //lo anadimos a la variable mensaje.
delay(25); //Esperamos 25ms para evitar colixiones de datos.
}//Fin while
if (mensaje != ""){
Serial.println(mensaje);
Serial.println(mensaje.length());
mensaje = "" ; //Borramos el string
}//Fin if
}//Fin if
}//Fin del while
}//Fin del void
Un saludo y gracias por adelantado.