
Descrición:
Podemos medir a luz ambiental cunha fotorresistencia ou LDR (Light Dependent Resistor), que é unha resistencia cuxo valor depende da cantidade de luz que incide sobre ela: A resistencia diminúe coa intensidade de luz incidente.
Montaxe:
Entre o pin analóxico A0 e a alimentación a 5V conectaremos unha LDR. Entre o pin A0 e a masa conectaremos unha resistencia de 10kΩ.
Conectamos tres LEDs coas súas resistencias de protección aos pins 11, 12 e 13.
![]() |
![]() |
Programa:
Procédese da mesma maneira que como fixemos co potenciómetro. Por exemplo, podemos utilizar a información que lemos na consola sobre o valor da LDR en función da luz incidente para acender un LED cando a luz ambiental baixe dun determinado valor.
// Declaración de variables int valor=0; // variable que le o valor da LDR, entre 0 e 1023 int led1=13; // Configuración void setup(){ Serial.begin(9600); // Inicia a comunicación serie pinMode(led1, OUTPUT); } // Programa void loop() { valor = analogRead(A0); // Asignamos a variable "valor" o valor lido na entrada analóxica A0 Serial.println(valor); //Imprime no monitor serie dito valor if (valor <= 500) { // Cando a variable "valor" e menor ou igual que 500 digitalWrite(led1,HIGH); // acéndese o LED } else { digitalWrite(led1,LOW); // en caso contrario apágase } delay(200); // Retardo de 100ms para a visualización de datos na consola }
Propostas:
- Luz en aumento: Fai que a medida que haxa menos luz se vaian acendendo máis LEDs, e a medida que a luz aumente os LEDs se vaian apagando.
- Flash automático: Simula que sacamos unha fotografía cando prememos nun pulsador. Debe acenderse e apagarse rapidamente un LED de alta luminosidade cando un sensor de luz (LDR) detecte que a luz ambiental é demasiado baixa. En caso contrario o flash non se activará.