Tengo un Arduino mega 2560 con un max232 que ocupo para leer datos de un puerto rs232, y el dispositivo que quiero controlar ocupa leer los datos por el puerto rs232 en hexadecimal el código es 0C FF FF FF FF el Max232 se encarga de mandar los datos y recibir los datos al Arduino, pero al momento de intentar leer los datos de entrada del rs232 me marca 0 siempre, también quiero leer los datos que recibe el rs232, no e trabajado con comunicación rs232 ni datos hexadecimales, por eso quiero saber si el programa esta bien, se los comparto.
byte inicio[]={0x0C, 0xFF, 0xFF, 0xFF, 0xFF};// Comando de inicio
byte retorno[]={0x0F, 0X02, 0X06};// Comando regreso
uint8_t Datos;
void setup()
{
Serial.begin(9600);
Serial1.begin(9600);
Serial.println("Start");
delay(100);
Serial1.write(inicio,5);
}
void loop(void)
{
delay(100);
if (Datos == 20)
{
Serial1.write(retorno,3);//comando
delay(100);
}
if (Datos == 10)
{
Serial1.write(retorno,3);//comando
delay(100);
}
leerSerial();
delay(100);
}
void leerSerial() {
while (Serial1.available()>0) {
Datos = Serial1.read();
delay(100);
Serial.println(Datos);
}
}
LECTURA_DE_DATOS.ino (573 Bytes)