Hola, disculpen tenga una duda sobre el modulo bluetooth, mi maestro me encargo un proyecto de implementar el modulo bluetooth en una casa domotica con 5 leds donde se establesca la siguiente condicion:
Bluetooth Interruptor
1 0 = 1 manda a encender el led
0 1 = 1 manda a apagar el led
0 0 = 0 manda a apagar el led
1 1 = 1 apaga el led
cabe destacar que esto es con 5 leds, por lo cual la condicion se tiene que hacer con todos los leds.
hasta ahora yo eh logrado hacer esta condicion con un solo led, el problema inicia cuando empiezo a tomar en cuenta el segundo led, es decir mando a encender el primer led y enciende, mando a encender el segundo led y encende tambien los puedo apagar desde la aplicacion sin ningun problema
y las condiciones se pueden hacer con cada led pero individualmente, y yo quiero hacerlo pero con todos los leds a la vez, nose si me explico?, espero y me puedan ayudar, aqui les dejo mi programa.
centro representa al interruptor
int estado =0;
int centro1 = 8;
int centro2 = 9;
int centro3 = 10;
int centro4 = 11;
int centro5 = 12;
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int valor;
int valor1;
int aux_1 =0;
int aux_2 =0;
int aux_3 =0;
int aux_4 =0;
int aux_5 =0;
void setup(){
Serial.begin(9600);
delay(1000);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(led4,OUTPUT);
pinMode(led5,OUTPUT);
pinMode(centro1,INPUT);
pinMode(centro2,INPUT);
pinMode(centro3,INPUT);
pinMode(centro4,INPUT);
pinMode(centro5,INPUT);
}
void loop(){
if(Serial.available()>0){
estado = Serial.read();
}
//////////////////////////////////////////////// foco 1
valor = digitalRead(centro1);
{
if( valor == LOW)
{
if (estado =='1'){
if(aux_1 == 0){
digitalWrite(led1,HIGH);
aux_1 = 1;
}
}
}
else{
digitalWrite(led1,LOW);
aux_1 = 0;
}
}
if(estado == '2'){
digitalWrite(led1,LOW);
aux_1 = 0;
}
/////////////segunda condicion del primer foco
valor1 = digitalRead(centro1);
if( valor1 ==HIGH)
{
if (estado =='2'){
if(aux_1 == 0){
digitalWrite(led1,HIGH);
aux_1 = 1;
}
}
else{
digitalWrite(led1,LOW);
aux_1 = 0;
}
}
////////////foco2
valor = digitalRead(centro2);
{
if( valor == LOW)
{
if (estado =='3'){
if(aux_2 == 0){
digitalWrite(led2,HIGH);
aux_2 = 1;
}
}
}
else{
digitalWrite(led2,LOW);
aux_2 = 0;
}
}
if(estado == '4'){
digitalWrite(led2,LOW);
aux_2 = 0;
}
/////////segunda condicion del segundo foco
valor1 = digitalRead(centro2);
if( valor1 ==HIGH)
{
if (estado =='4'){
if(aux_2 == 0){
digitalWrite(led2,HIGH);
aux_2 = 1;
}
}
else{
digitalWrite(led2,LOW);
aux_2 = 0;
}
}