miércoles, 5 de diciembre de 2018

CODIGO PARA ENCENDER LUCES NAVIDEÑAS CON LA APP POR MEDIO DEL BLUETOOTH

//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);
    }
   }
   
  }
}