Good afternoon, I have a problem with a photoresistor I would like to know if anyone can help me. I am doing a project in arduino with the LDR with 5 leds connected, when there is little light they should turn on, when there is light they will turn off. But when it gives the light to the LDR the value stays fixed in 1023 and no longer changes, it becomes cycled. What is the problem?
Thank you very much, I put my code and the connection.
int pinLed1=12;
int pinLed2=11;
int pinLed3=10;
int pinLed4=9;
int pinLed5=8;
int pinLDR=A0;
int valorLDR = 0;
void setup() {
pinMode(pinLed1,OUTPUT);
pinMode(pinLed2,OUTPUT);
pinMode(pinLed3,OUTPUT);
pinMode(pinLed4,OUTPUT);
pinMode(pinLed5,OUTPUT);
Serial.begin(9600);
analogReference(EXTERNAL);
}
void loop() {
valorLDR=analogRead(pinLDR);
//valorLDR=map(valorLDR, sensorMin, sensorMax, 0, 255);
//valorLDR= constrain(valorLDR,0,255);
if(valorLDR <=575)
{
digitalWrite(pinLed1,LOW);
digitalWrite(pinLed2,LOW);
digitalWrite(pinLed3,LOW);
digitalWrite(pinLed4,LOW);
digitalWrite(pinLed5,LOW);
}
else if(valorLDR >=576 & valorLDR <=600)
{
digitalWrite(pinLed1,HIGH);
digitalWrite(pinLed2,LOW);
digitalWrite(pinLed3,LOW);
digitalWrite(pinLed4,LOW);
digitalWrite(pinLed5,LOW);
}
else if(valorLDR >=601 & valorLDR <=625)
{
digitalWrite(pinLed1,HIGH);
digitalWrite(pinLed2,HIGH);
digitalWrite(pinLed3,LOW);
digitalWrite(pinLed4,LOW);
digitalWrite(pinLed5,LOW);
}
else if(valorLDR >=626 & valorLDR <=640)
{
digitalWrite(pinLed1,HIGH);
digitalWrite(pinLed2,HIGH);
digitalWrite(pinLed3,HIGH);
digitalWrite(pinLed4,LOW);
digitalWrite(pinLed5,LOW);
}
else if(valorLDR >=641 & valorLDR <=651)
{
digitalWrite(pinLed1,HIGH);
digitalWrite(pinLed2,HIGH);
digitalWrite(pinLed3,HIGH);
digitalWrite(pinLed4,HIGH);
digitalWrite(pinLed5,LOW);
}
else if(valorLDR > 652)
{
digitalWrite(pinLed1,HIGH);
digitalWrite(pinLed2,HIGH);
digitalWrite(pinLed3,HIGH);
digitalWrite(pinLed4,HIGH);
digitalWrite(pinLed5,HIGH);
}
delay(250);
Serial.println(valorLDR);
}