Respuestas:
Es posible utilizar un led como sensor de luz, así como un emisor de luz. Esencialmente, un led con polarización inversa actuará como un capacitor, si se desconecta la carga se agotará a una velocidad aproximadamente proporcional a la luz que lo golpea.
Podemos usar esto con un microcontrolador, utilizando la capacidad de múltiples estados de los puertos.
La resistencia debe ser de aproximadamente 100 ohmios, solo he usado esto con leds rojos; puede funcionar con otros.
Use la siguiente secuencia:
Set Port A output high
set Port B output low // this makes sure the led is discharged
wait 1mS
set Port A output low
set Port B output high // reverse bias and charge
wait 1mS
set Port B as input // Port B is high impedance input
time how long for Port B to read low
El período de tiempo dependerá de la cantidad de luz que llegue al led.
Hay varios ejemplos de esto en la web: los enumeraré aquí cuando los encuentre de nuevo:
El LED detecta y muestra la intensidad de la luz ambiental
Los LED rojos funcionan como sensores de luz.
Detección multitáctil a través de pantallas de matriz LED : video muy bueno
Comunicación y detección de muy bajo costo utilizando LED bidireccionales
Aquí hay un buen video que describe cómo se pueden usar los LED como sensor de luz http://www.youtube.com/watch?v=VZUvoLDlMS0 También Forest M.Mims III ha escrito sobre proyectos simples que usan LED como sensores táctiles.
Además, he leído que los LED SMD funcionan mejor como sensores de luz que los LED de orificio pasante ...
Aquí hay un circuito que usa un LED para detectar la luz de un kit educativo:
El LED 0 permite que pase una corriente muy pequeña influenciada por la luz porque su polaridad se invierte. Asegúrese de que sea verde, amarillo o transparente o que no funcione (rojo). Los transistores amplifican esta corriente lo suficiente como para activar un LED polarizado normal (LED 1). Puede ajustar la sensibilidad agregando más transistores, por lo que tiene una mayor amplificación, respondiendo a un nivel de iluminación más bajo.
Este sitio: http://www.users.waitrose.com/~robinjames/LED_as_light_sensor/LED_as_light_sensor.html muestra cómo medir los niveles de luz usando un LED y un opamp, para dar un voltaje proporcional al nivel de luz. Ofrece una amplia gama de lecturas y funciona desde la oscuridad total hasta la luz solar total. Se puede utilizar para alimentar el ADC de un microcontrolador como un Arduino.
Las fotocélulas son una forma muy simple de detectar la luz. Su resistencia varía proporcionalmente a la cantidad de luz que brilla sobre ella.
LadyAda tiene una muy buena descripción de las fotocélulas, incluida la implementación de Arduino: http://www.ladyada.net/learn/sensors/cds.html .