Es posible que no se necesite un amplificador operacional para medir la salida del fototransistor con un microcontrolador.
Un microcontrolador puede cambiar dinámicamente un pin entrada-salida digital a uno de tres estados:
- entrada
- salida
- triestado (alta impedancia)
Cualquier microcontrolador es adepto a la hora de medir (usando un contador interno). Se mide el tiempo necesario para cargar o descargar un condensador. El tiempo de carga / descarga es inversamente proporcional a la corriente del fototransistor.
Primero, el condensador se carga hasta la tensión de alimentación de CC del microcontrolador al configurar el pin de E / S en la salida de una lógica 1.
Luego, el pin de E / S se cambia a entrada y se inicia el contador interno.
Una vez que el pin de E / S alcanza un estado lógico bajo, el contador se detiene. Ahora contiene un valor de conteo inversamente proporcional al nivel de luz.
simular este circuito : esquema creado usando CircuitLab
El pin de E / S se puede sondear en un bucle estrecho, o podría generar una interrupción en el cambio. Estás buscando esa transición de alto a bajo. Es una buena idea también poder terminar este proceso si el contador se desborda ... si NO hay luz, la transición de alto a bajo nunca puede ocurrir. Este método se puede utilizar con casi cualquier microcontrolador, incluso uno sin convertidor analógico a digital interno.
El capacitor puede tomar un valor mayor o menor, dependiendo de la cantidad de luz que vea el fototransistor. Un condensador de pequeño valor puede detectar la luz de las velas. Un gran valor es mejor para la luz solar.
Este proceso de medición de luz toma algún tiempo y no es apropiado para cambiar rápidamente las fuentes de luz, como el flash fotográfico. Sin embargo, es más lineal que el uso de una foto-resistencia. El voltaje de umbral de un pin de E / S digital no es muy confiable. La linealidad de este método de medición de luz puede mejorarse utilizando un comparador de voltaje analógico para detectar el voltaje de transición de alto a bajo: muchos microcontroladores incluyen uno (como Arduino).