He intentado resolver el siguiente problema por mi cuenta buscando temas similares en este foro, pero no he tenido éxito.
Del puerto serie obtendré una cadena que representa un valor HEX, así:
(supongo que en el monitor serie no habrá espacios entre caracteres, "54472c30...")
Si pongo esta cadena en un conversor a ASCII lo que obtengo es:
Que debería hacer para obtener una cadena con EXACTAMENTE lo que está marcado en esta última imagen??
Primero usa programas Terminales que te permitan ingresar caractetes en HEXADECIMAL, no todos los permiten.
Ejemplo el monitor serie del IDE no lo permite. Realterm es un buen ejemplo de un terminal que te permite elegir como enviar la información.
No entiendo porque me hace falta otro programa, en el puerto serie yo obtendré una cadena del tipo "5652474B". Puedo ver perfectamente esta cadena en el monitor serie de IDE. Lo que quiero es ser capaz de pasar esa misma cadena a su significado en ASCII, en este caso "VRGK".
Un sensor envia sus lecturas con cadenas hexadecimales. Es decir, al conectar ese sensor al arduino, si yo hago:
lectura = Serial.read();
Serial.Print(lectura);
Lo que obtendré en el monitor del puerto serie será algo como "5652474B". Lo que yo quiero es cambiar/transformar/guardar (llamalo como quieras) esa lectura que he recibido en su equivalente en ASCII, que en este caso seria "VRGK".
He intentado explicarme de la mejor manera posible!
Muchas gracias!!
Gracias por la respuesta!! Para nada me habia molestado!!
Habia visto antes el ejemplo que adjuntas, pero en ese ejemplo creo entender que la cadena a transformar en ese ejemplo es introducida en el sketch de IDE. Tengo la duda de si, al leer la cadena desde el puerto serie (tal y como he descrito en mi anterior mensaje), puedo trabajar sobre ella de la misma manera que en el ejemplo que me muestras...
Muchas gracias!
Sube tu código (lee en Normas de Foro, punto 7, la forma correcta de hacerlo) y vemos como integrar la conversión en lo que ya tienes.
Igual te adelanto, sí, es cierto que el ejemplo es con una variable con valor asignado en el código pero con solo cambiar esa variable por la que usas para guardar lo que envía el sensor queda resuelto el problema.