//declaración de variables
String cadena;
int luz1 = 3;//ROJO
int luz2 = 4;//VERDE
int luz3 = 5;//AMARILLO
int luz4 = 6;//AZUL
int luz5 = 7;//NARANJA
int luz6 = 8;//BLANCOS
int ledstatus3 = 0;
int ledstatus4 = 0;
int ledstatus5 = 0;
int ledstatus6 = 0;
int ledstatus7 = 0;
int ledstatus8 = 0;
void setup () {
Serial.begin(9600);// setea la velocidad del puerto serie a 9600
//pin 7, 8,9,10,11,12 como salidas
pinMode(luz1,OUTPUT);
pinMode(luz2,OUTPUT);
pinMode(luz3,OUTPUT);
pinMode(luz4,OUTPUT);
pinMode(luz5,OUTPUT);
pinMode(luz6,OUTPUT);
digitalWrite(luz1, HIGH);
digitalWrite(luz2, HIGH);
digitalWrite(luz3, HIGH);
digitalWrite(luz4, HIGH);
digitalWrite(luz5, HIGH);
digitalWrite(luz6, HIGH);
}
void loop () {
//lee las cadenas de caracteres que ingresan al puerto serie
if (Serial.available()) {
cadena = String("");
while (Serial.available()) {
cadena = cadena + char(Serial.read());//Lee caracter por caracter y concatena a la variable cadena
delay(1);
}
//Lee el estados de los pines 7, 8,9,10,11,12 y se los asignas a las variables ledstatus 7, ledstatus8,ledstatus9,ledstatus10,ledstatus11,ledstatus12
ledstatus3 = digitalRead(luz1);
ledstatus4 = digitalRead(luz2);
ledstatus5 = digitalRead(luz3);
ledstatus6 = digitalRead(luz4);
ledstatus7 = digitalRead(luz5);
ledstatus8 = digitalRead(luz6);
Serial.println(cadena);//Muestra en el terminal serial la cadena obtenida
//Pin 3
if (cadena == "luz1") {//compara el valor de la cadena obetinada
if(ledstatus3==LOW){// si el valor en bajo enciende el pin 7 SALA
digitalWrite(luz1, HIGH);
}
if(ledstatus3==HIGH){// de lo contrario lo apaga
digitalWrite(luz1, LOW);
}
}
//pin4
if (cadena == "luz2") {//compara el valor de la cadena obetinada
if(ledstatus4==LOW){// si el valor en bajo enciende el pin 8 COCINA
digitalWrite(luz2, HIGH);
}
if(ledstatus4==HIGH){// de lo contrario lo apaga
digitalWrite(luz2, LOW);
}
}
//pin5
if (cadena == "luz3") {//compara el valor de la cadena obetinada
if(ledstatus5==LOW){// si el valor en bajo enciende el pin9 BAÑO
digitalWrite(luz3, HIGH);
}
if(ledstatus5==HIGH){// de lo contrario lo apaga
digitalWrite(luz3, LOW);
}
}
//pin6
if (cadena == "luz4") {//compara el valor de la cadena obetinada
if(ledstatus6==LOW){// si el valor en bajo enciende el pin 10 NIÑOS DORMITORIO
digitalWrite(luz4, HIGH);
}
if(ledstatus6==HIGH){// de lo contrario lo apaga
digitalWrite(luz4, LOW);
}
}
//pin7
if (cadena == "luz5") {//compara el valor de la cadena obetinada
if(ledstatus7==LOW){// si el valor en bajo enciende el pin 11 MASTER DORMITORIOS
digitalWrite(luz5, HIGH);
}
if(ledstatus7==HIGH){// de lo contrario lo apaga
digitalWrite(luz5, LOW);
}
}
//pin8
if (cadena == "luz6") {//compara el valor de la cadena obetinada
if(ledstatus8==LOW){// si el valor en bajo enciende el pin 12 GARAJE
digitalWrite(luz6, HIGH);
}
if(ledstatus8==HIGH){// de lo contrario lo apaga
digitalWrite(luz6, LOW);
}
}
}
}