Buenas!!
Tengo este codigo, en el que hay varias acciones. 1 LDR y un LED, 3 Pulsadores y 3 LEDs, y un POTENCIOMETRO y un LED. El caso es que todo separado me funciona, pero cuando lo junto solo me funciona lo de los tres pulsadores y los tres leds. Por ejemplo en las ultimas lineas del codigo esta lo del potenciometro y un led que según giro el potenciometro tiene que aumentar o disminuir el brillo del led. El problema es que cuando junto todo no va, es como si se cruzara. Alguien sabe lo que estoy haciendo mal?
//Control de iluminación - Sala Multiusos
int LED13 = 13; //El LED esta conectado en el pin 9
int LDR0 = 0; //El LDR esta conectador en el pin A0
int luz = 0;
int valor_sensor = 0;
int valor_limite = 490;
//Control de Accesos - Sala Multiusos
int pLED_10 = 10;
int pLED_11 = 11;
int pLED_12 = 12;
int pBTN_7 = 7;
int pBTN_8 = 8;
int pBTN_9 = 9;
//Techo solar - Piscina
const int led6 =6; // led conectado al pin 3
const int pot1 =1; // el pot esta conectado al pin A0
int brillo; //variable para el brillo
void setup() {
//Control de iluminación - Sala Multiusos
pinMode(LED13,OUTPUT);
pinMode(LDR0,INPUT);
//Control de Accesos - Sala Multiusos
Serial.begin(9600);
pinMode(pLED_10, OUTPUT);
pinMode(pLED_11, OUTPUT);
pinMode(pLED_12, OUTPUT);
pinMode(pBTN_7, INPUT);
pinMode(pBTN_8, INPUT);
pinMode(pBTN_9, INPUT);
//Techo solar - Piscina
pinMode (led6, OUTPUT); // declaramos el led como salida
}
void loop ()
{
valor_sensor = analogRead(LDR0);
luz = (5.0 * valor_sensor * 100.0)/1024.0;
delay(300);
if (luz <= valor_limite) //Si el valor de luz es menor o igual que el valor limite
{
digitalWrite (LED13, LOW); //El led se apaga
}
if (luz > valor_limite) //Si es mayor que el valor limite
{
digitalWrite (LED13, HIGH); //El led se eniende
}
//Control de Accesos - Sala Multiusos
if( digitalRead(pBTN_7) );
{
while( digitalRead(pBTN_7) );
delay(150);
digitalWrite(pLED_10, HIGH);
Serial.println("1");
digitalWrite(pLED_12, LOW);
digitalWrite(pLED_11, LOW);
}
if( digitalRead(pBTN_8) );
{
while( digitalRead(pBTN_8) );
delay(150);
digitalWrite(pLED_11, HIGH);
Serial.println("2");
digitalWrite(pLED_12, LOW);
digitalWrite(pLED_10, LOW);
}
if( digitalRead(pBTN_9) );
{
while( digitalRead(pBTN_9) );
delay(150);
digitalWrite(pLED_11, LOW);
Serial.println("ACCESO PERMITIDO");
digitalWrite(pLED_12, HIGH);
digitalWrite(pLED_10, LOW);
}
brillo = analogRead (pot1) / 4;
analogWrite(led6, brillo);
}
Moderador: Titulo editado x no reflejar la consulta realizada