LDR

Practicas 


Explicación de cada parte del código:

  • Variables:


    int LightPin = 3; // Selecciona el pin de entrada para el sensor de luz int ledPin = 13; // Selecciona el pin para el LED int val = 0; // Variable para almacenar el valor capturado desde el sensor
  • Setup:


    void setup() { pinMode(ledPin, OUTPUT); // Declara el ledPin en modo salida }

    En la función setup, se configura el ledPin (en este caso, el pin 13) como una salida para encender o apagar el LED.

  • Loop:



    void loop() { val = analogRead(LightPin); // Lee el valor del sensor de luz (0 a 1023) digitalWrite(ledPin, HIGH); // Enciende el LED delay(val); // Detiene el programa por el tiempo captado desde el sensor digitalWrite(ledPin, LOW); // Apaga el LED delay(val); // Detiene el programa por el tiempo captado desde el sensor }

    Aquí, el valor del sensor de luz (val) controla el tiempo de encendido y apagado del LED. Cuanto mayor sea el valor de val (más oscuro esté el ambiente), más lento parpadeará el LED.

Mejoras posibles:

  1. Controlar la sensibilidad: Como el val varía entre 0 y 1023, puedes ajustar este valor para aumentar o disminuir la sensibilidad, por ejemplo:


    int tiempoDelay = map(val, 0, 1023, 10, 1000); // Ajusta el rango de delay
  2. Evitar parpadeo constante en presencia de luz: Puedes poner una condición para que el LED parpadee solo en situaciones de poca luz, agregando algo como:


    if (val > umbral) { // Donde "umbral" es un valor de referencia // Código para parpadear el LED }

Comentarios