¿Por qué mi fototransistor no interrumpe mi microcontrolador?

1

Compré un par de fototransistores. Todos ellos tienen una ventaja más corta que la otra. Supongo que, como los diodos normales, esto significa que el cable más largo va a V + y el extremo corto va a GND.

Configuré el fototransistor de esta manera:

Pongo la línea de salida en mi pin de interrupción en mi microcontrolador. Cuando enciendo una luz brillante en el fototransistor, el microcontrolador no interrumpe.

BUT!!

Cuando puse la misma salida en mi ADC, mi microcontrolador dice que lee 5 V con la luz brillando en el fototransistor. También lee 0.8V cuando el fototransistor está cubierto.

¿Por qué un multímetro y un ADC leerían la salida como Baja / Alta, pero no activará una interrupción en mi microcontrolador? (Sé que el problema no es el código porque puedo conectar un cable recto de 3.3V al pin de interrupción y se interrumpirá).

EDIT

El nivel lógico es 5V. Puse el pin de salida en un LED verde que luego se pone a tierra. Cuando enciendo la luz en el fototransistor, se enciende el LED verde. Así que estoy seguro de que tengo suficiente corriente.

Quiero que se dispare cuando la luz lo ilumina y tira del pin hacia arriba.

SOLUTION

Aquí tuve dos problemas que se combinaron en un problema realmente molesto. El primer problema fue el mencionado anteriormente. El otro problema era que no había suficiente flujo de corriente. Resolví ambos problemas apilando cuatro fototransistores en paralelo en una configuración de pullup e invirtiendo los cables.

Gracias a Nedd por la sugerencia de cambiar de desplegable a pullup. Eso los hizo mucho más sensibles. También me di cuenta de que mis fototransistores apuntaban en la dirección equivocada.

Por esta razón, he marcado la respuesta de Nedd como la más correcta.

Sé que mi solución no es ideal. Es bastante intrépido, por lo que no respondí mi propia pregunta y la marqué como correcta. En el futuro, probablemente optaré por una solución diferente, como la TI OPT-101.

    
pregunta toshiomagic

2 respuestas

0

El 0.8v residual muestra que el transistor de foto tiene una fuga de corriente incluso cuando está oscuro. Usar un valor más bajo Re puede ayudar. Mejor aún, invierta las posiciones de la resistencia y el transistor fotográfico, luego detecte una señal de baja intensidad cuando se enciende la luz (en este caso se podría usar una resistencia de mayor valor).

    
respondido por el Nedd
1

Respuesta corta, el 0.8v probablemente no sea lo suficientemente bajo para contar como nivel lógico "bajo". La especificación para esto (Vil) se explica en la hoja de datos del microcontrolador.

Como una solución fácil, agregue un dispositivo de entrada con disparador schmitt, como una 7414 puerta entre El fototransistor y la entrada de interrupción. Esto asegurará que el microcontrolador solo vea Vdd o Vss, y proporciona alguna histéresis .

    
respondido por el rdtsc