Hola a todos! Queria compartir con ustedes esta duda que me genero un proyecto, la cual pude solucionar de otra manera, pero me gustaria saber si es posible hacer lo que deseo...
El punto es que tenia dos placas utilizando un ATMega48 conectadas a una computadora y sirviendo como controlador de algunos actuadores (motores, etc) para un programa en la pc que servia como control de domotica basico. A una de estas, por que se quemo, la sustitui por un Arduino Uno.
El punto es que el anterior controlador mandaba unas variables en hex que lei con un monitor serial en la pc (Serial Port Monitor de Eltima), esto porque pude leer el que funcionaba.
Este programa me muestra los datos enviados al puerto, como caracteres y en valor hex. Pero continuando con el proyecto, me encontre que para un evento ocurrido en el programa en la pc, mandaba un dato al ATMega48 y este tenia que responder con un dato de valor 90 en hex. El problema es que 90 en hex no representa ningun caracter en ASCII. Al final, tuve que re-diseñar el programa que utilizaban en la PC y asi logre solucionar el problema.
Mi pregunta es, ¿se puede imprimir datos en valores hex?, porque he intentado con Serial.print(x.HEX) y como ejemplo puedo decir que le pedi que imprima el numero 15 en hex, lo que hara el Arduino con esa funcion es imprimir "F", pero en realidad, para el programa antes mencionado, me mostrara que imprimi una "F" no como hex sino como caracter.
int numero = 15;
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println(numero,HEX);
delay(1000);
}
Una imagen para que se entienda mejor
![]()
Desde ya muchas gracias!!
