¿Cómo puedo proteger una señal de entrada al CMOS sin alimentación?

2

Mi circuito tiene un cargador de batería y un ATMega88. El ATMega necesita detectar el estado del cargador de la batería, pero si la batería es demasiado baja, es posible que el ATMega no tenga energía.

Sé que es malo conducir una entrada CMOS a más de 0,3 V por encima de VCC: puede alimentar los chips a través de los diodos de protección, provocar un bloqueo, etc.

Veo tres soluciones posibles:

1) Utilice un transciever de bus de doble fuente. enlace Esto agrega más costo del que me gustaría.

2) Coloque una resistencia de 100 K en línea con la señal, de modo que "no haya mucha" corriente fluya hacia el circuito apagado. Creo que esto no debería provocar un bloqueo o quemar nada, pero aún podría encender algunos circuitos y provocar una operación no deseada.

3) Use resistencias divisoras para reducir la señal a < 0.3V, y aliméntela a un pin ADC. Esto requiere trabajo y tiempo extra para la detección, y todavía estoy un poco nervioso por la alimentación de cualquier voltaje / corriente en el CMOS sin alimentación.

Por eso me inclino por la opción 3, pero espero que haya una opción mejor que no haya pensado.

    
pregunta ChrisPhoenix

2 respuestas

4

La forma más fácil de lidiar con una señal digital de este tipo es alimentarla a un BJT o MOSFET con un pullup desde el voltaje del procesador. Por ejemplo:

simular este circuito : esquema creado usando CircuitLab

El diodo permite que la entrada sea negativa también sin dañar el procesador o el transistor. Los picos breves de +/- 100V no dañarán nada, independientemente del estado de energía del procesador. El costo es de centavos, a lo sumo.

    
respondido por el Spehro Pefhany
2

¿Sería posible agregar algunos circuitos para que el Atmega pueda ser alimentado desde cualquier fuente de alimentación que esté suministrando al cargador de batería? Esto es más complicado y requiere que implemente una solución de "ruta de alimentación" donde las baterías se desconectan de la carga mientras se carga. Pero elimina la posibilidad de que el Atmega se apague durante la carga.

Por lo general, las salidas de estado del cargador están abiertas. Si es así, simplemente levante la salida al procesador VCC. Entonces no tienes que preocuparte por eso.

Otra opción, más barata y más simple que un transceptor, es un transistor dual (o dos transistores separados) con un PMOS y un NMOS. Vea el dibujo a continuación. Cuando la compuerta M2 NMOS es alta, la señal de salida del cargador se conecta a la entrada del procesador. Cuando la puerta M2 NMOS está baja, la entrada del procesador está aislada. Asegúrese de que el nivel de señal es compatible. Además, si el VDD del procesador es inferior a 3V, deberá elegir un NMOS diferente con un Vgs (th) inferior.

Si lo desea, la compuerta NMOS podría ser activada por un pin IO en lugar de una conexión directa a VDD. Pero el software debería asegurarse de conducir la compuerta en alto antes de leer la entrada. Cuando el procesador se desactiva, todas sus salidas serán bajas, por lo que aún es seguro en esa situación.

Tal vez debería publicar un enlace al IC del cargador y decirnos qué salidas de estado está monitoreando para que podamos verificar si están abiertas o no.

simular este circuito : esquema creado usando CircuitLab

    
respondido por el mkeith

Lea otras preguntas en las etiquetas