Protección de los pines de entrada del microcontrolador del interruptor de alimentación suave

10

Estoy trabajando en un interruptor de encendido suave para un microcontrolador donde un interruptor momentáneo puede encender el circuito (incluido el microcontrolador), y luego, cuando se presiona el interruptor por segunda vez, el microcontrolador puede apagarse después de realizar una limpieza.

dibujo de circuito

Tengo el circuito anterior hasta ahora, pero no estoy seguro de si será confiable. Estoy usando una batería de iones de litio (3.7-4.2V) y el regulador TC1015 (salida de 3.0V). La idea es que cuando se presiona el interruptor, el regulador se enciende, luego el microcontrolador se pone uC Poweralto, manteniéndose encendido. Cuando se presiona el interruptor por segunda vez, una interrupción encendida uC Switchpermitirá que el microcontrolador se ponga uC Powerbajo, apagándose.

Lo que no estoy seguro es si necesito proteger el microcontrolador del voltaje de la batería. El microcontrolador que estoy usando tiene un voltaje máximo absoluto en los pines de E / S de Vdd + 0.4V, por lo que no estoy seguro de cómo manejarlo mejor.

Segundo, ¿este circuito realmente impedirá que el regulador se encienda cuando esté en el estado "apagado"? Pensé en usar una resistencia pulldown en la línea de habilitación, pero estoy preocupado por el consumo de corriente mientras el chip está encendido.

Editar: El microcontrolador es la carga principal que se cambiará, por lo que desafortunadamente no funcionará en modo de bajo consumo.

Editar # 2 (después de que se publicaron las respuestas):

Terminé usando el siguiente circuito:

diagrama de circuito fijo

El circuito publicado anteriormente no funcionaba muy bien y tenía problemas con una línea de habilitación flotante cuando el microcontrolador no lo estaba alimentando.

El nuevo circuito usa un flip flop, con la línea de datos normalmente baja. Al presionar el interruptor se activa el reloj y se enciende el sistema. Las pulsaciones posteriores del interruptor elevan la CLOCKlínea (permitiendo que el microcontrolador detecte la prensa), pero no afectan la salida del regulador. Una vez que el microcontrolador está listo para apagarse, establece la DATAlínea alta y luego establece la CLOCKlínea alta, lo que hará que el regulador se apague.

Una de las cosas realmente buenas de esta configuración es que la primera pulsación del botón enciende el regulador y lo mantiene encendido hasta que el microcontrolador esté listo para apagarse. El rebote no es un problema, porque no importa cuántas veces la línea del reloj se ponga alta, la línea de datos aún se mantiene baja por el menú desplegable. Además, el consumo de corriente debe ser muy mínimo (solo el flip flop y el TC1015 mientras está apagado), y hay un consumo de corriente mínimo a través de las resistencias mientras está encendido.

El microcontrolador necesita estar protegido del voltaje de la batería en la línea del reloj, pero como sugirió @Andy, eso se puede hacer con una resistencia encendida CLOCK.

Carson Darling
fuente

Respuestas:

4

R1 y R2 limitarán la corriente en pines en su uC y esto generalmente es suficiente para proteger su dispositivo; solo necesita verificar en la especificación cuál es esa corriente "límite" y elegir un valor de resistencia que sea apropiado dado que el suministro de uC puede estar a 0V (sin alimentación). Los zeners pueden quedar fuera de esta base.

La fiabilidad es otro problema. Cambiar el rebote puede hacer que tu uC se encienda y luego se apague varias veces, así que escribe tu código para estar al tanto de esto.

Creo que puede ser aconsejable tener una resistencia activada, pero probablemente en la región de + 10K y tal vez esto podría ser mayor, posiblemente 100k.

El voltaje en el pin de apagado debe ser al menos el 45% de Vin, por lo que esto no debería ser un problema.

Andy alias
fuente
3

Esto parece un sistema de autoenclavamiento, que en teoría debería funcionar, como lo haría un circuito de relé de autoenclavamiento (se usa un botón para encender el relé, y luego porque el pin de carga y el pin de la bobina están unidos, el relé permanece encendido mientras la energía llegue a los pines de carga).

Para probarlo, sin arriesgar un microcontoller, puede hacer esto. Agregue una carga ficticia para mantener contento al regulador (unos pocos leds, también para que pueda ver que está funcionando), y luego ate la salida al punto donde está marcado uC Power. Después de presionar el interruptor, el regulador debe comenzar, encendiendo los leds y la alimentación de uC, que a su vez debe mantener el pin de habilitación en la lógica alta (Shutdown Logic High es un mínimo del 45% de VIN, por lo que 1.89V a 4.2V In. )

Entonces, si presiona el botón y los leds permanecen encendidos después de soltarlo, funciona. Si no lo hace, no funcionará como está.

Advertencia: digo eso, aunque no estoy seguro de cómo los diodos Zener harán que el circuito reaccione.

Transeúnte
fuente
0

El circuito que une la batería, las señales del microcontrolador y la entrada SHDN * del regulador (renombrado EN) parece dudoso.

¿Qué tal usar un pestillo (que funciona con batería) para capturar el cierre de la llave? Luego, la salida de este pestillo se puede OR con una señal de señal de la MCU para activar el pin SHDN * del regulador (renombrado a EN en el esquema). Al arrancar, la MCU debe conducir su línea de habilitación primero, luego limpiar el pestillo, asegurando así que EN permanezca firme.

La acción del botón subsiguiente se puede monitorear a través del pestillo: si se presiona nuevamente el interruptor, el pestillo vuelve a subir. La MCU se da cuenta de esto y borra tanto el pestillo como su señal de activación, lo que desencadena el apagado. Como el interruptor está bloqueado, la MCU puede monitorear esto de manera muy conveniente simplemente sondeándolo a una frecuencia pausada.

Un refinamiento opcional más sería un circuito para asegurar que cuando la batería se conecte, el sistema se encienda sin usar el botón. Esto podría ser algún tipo de pulso que establece el cierre.

Kaz
fuente
0

Tire EN bajo con una resistencia adecuada y átelo a un pin io en el mcu. El interruptor se conecta a un pin de entrada del mcu. Al presionar el botón, se activa una interrupción en el pin de entrada mcu que alterna el pin de salida que controla el pin EN de su LDO.

Poner el mcu en reposo profundo permitirá que el pasador se baje y deshabilitará el LDO. Disparar una interrupción con el interruptor lo despertará, levantando el pin de nuevo y activando el LDO nuevamente.

tres
fuente
Lo siento, debería haber especificado un poco más claramente, el microcontrolador es la carga principal que el LDO cambiará, por lo que dejarlo en un estado de baja potencia no funcionará.
Carson Darling