Teclado Matricial Para encender Led con dos Arduinos Conectados por Serial...

Buenos días,
He conseguido encender y apagar un led con la misma tecla de un teclado matricial y funciona perfecto, sin embargo, he querido conectar otro Arduino como esclavo y hacer exactamente lo mismo, solo que el primero le envíe los datos, pero solo he conseguido encender el led en el otro arduino, no logro hacer que se apague... pues no sé cómo separar este código, para que, al volver a presionar la tecla se apague en el Arduino esclavo.
Pido la ayuda de vosotros, para poder conseguir que este código:

char tecla = teclado.getKey();
if (tecla == '1') {
   digitalWrite(led1, !digitalRead(led1));
   Serial.write('H'); // esto lo envío a otro Arduino para encender otro led, lo cual funciona
}
 , pero no logro apagarlo en el otro Arduino, pues tengo programado que, para poder apagarlo enviar:
 Serial.write('L');

que he utilizado para que al oprimir una tecla en un teclado matricial se encienda un led y se quede encendido y luego al volver a oprimir la tecla se apague. (esto funciona perfectamente en el Arduino maestro)
Necesito separar este código y no tengo ni idea :slightly_frowning_face: , o sea, escribirlo con if y else ("creo"). Lo que yo quiero conseguir es que, cuando oprima la tecla del teclado matricial el led encienda y se quede encendido en el Arduino esclavo (lo que sí me permite este código) pero no me permite que, al volver a presionar la tecla se apague en el Arduino esclavo.
Sé que el problema está en que no le puedo enviar H y L al mismo tiempo al otro Arduino, pero es que este código solo me deja enviarle una de las dos, por eso quisiera separarlo.

En resumidas cuentas y lamento no expresarme tan bien, lo que requiero es que cuando el led esté encendido envíe la 'H' al otro Arduino para que el otro encienda y cuando yo oprima la misma tecla envíe la 'L' y se apague.

Aclaro, estoy utilizando Dos Arduino Uno, están bien conectados y el Maestro le transmite al Esclavo y este recibe, sin embargo, este código solo me deja encender el led en el otro Arduino y no sé cómo apagarlo o cómo enviarle un código cuando la tecla se presione otra vez.

char tecla = teclado.getKey();
if(tecla == '1') {
  digitalWrite(led1, !digitalRead(led1));
  if(digitalRead(led1)) {
    Serial.write('H'); // esto lo envío a otro Arduino para encender otro led, lo cual funciona
  } 
  else {
    Serial.write('L');
  }
}

Fijate si te sirve, si no funciona pon ambos códigos completos y los vemos.
Saludos

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.