Me gustaría saber cómo se puede diseñar un sistema de encendido/apagado para un dispositivo que funciona con batería con entradas GPIO que tenga las siguientes características:
La última parte se puede hacer fácilmente ejecutando un temporizador en la mcu y verificando la duración de la pulsación cada vez que se genera una interrupción, y luego afirmando la señal de apagado del regulador de voltaje cuando esté listo. Pero no tengo ideas para encender 4 segundos y, al mismo tiempo, ser utilizable como GPIO después del encendido. La siguiente pulsación corta de este interruptor no debería apagar el sistema. Alguna idea ?
Podrías hacerlo con algunos pasivos, un flip-flop y un gatillo schmitt, algo así:
Cuando el interruptor está cerrado, el capacitor se carga lentamente. Cuando se alcanza el voltaje de entrada de transición de alto nivel del disparador schmitt (aquí en ~ 4 s), la salida del búfer del disparador schmitt (puede usar SN74xx1G17) sube, activando el reloj del flip-flop (puede usar SN74xx1G74), que luego cambia su salida. Tenga en cuenta que el flip flop D está configurado con la salida inversora conectada a su entrada D, por lo que cambia de estado en cada flanco ascendente del reloj.
Cuando se suelta el botón, el capacitor se descarga (toma un poco más de tiempo que el tiempo de carga debido a R2) y luego puede presionar nuevamente para desactivar la salida.
Para resumir, aquí, cada vez que presiona el botón durante más de 4 segundos, la salida "PWREN OUT" cambiará (esto puede activar directamente la entrada de habilitación de un regulador), y aún podrá detectar pulsaciones de botón más cortas de la MCU con la salida "SW OUT" .
La ventaja de esta solución es que no involucra el software en absoluto. Entonces, si hay un error en alguna parte y la MCU se bloquea, aún puede apagarla.
Tenga en cuenta, sin embargo, que si la MCU está apagada, aplicar un voltaje en el GPIO ("SW OUT" está alto porque el botón está presionado) puede dañarlo. Verifique las clasificaciones de MCU en la hoja de datos. Para resolver esto, puede poner una resistencia de alto valor (100k más o menos) en serie con la línea "SW OUT" (y eventualmente un diodo que sujetará cualquier voltaje más alto que el voltaje de suministro de MCU, pero lo más probable es que MCU tenga tal diodos incorporados).
PWREN OUT
no se garantiza que sea alto (o bajo) ya que se desconoce el estado inicial del flip flop? Entonces, ¿no hay una posibilidad del 50% de que tan pronto como se conecte la batería, el regulador se encienda, si PWREN OUT
está conectado directamente a la entrada EN del regulador?
Lundin
oscuro
Lundin