Tengo un arduino que es alimentado por una batería de bloque de 9v y habilitado por un interruptor. Quiero cambiar el curcuit, de modo que cuando se apaga el interruptor, el arduino permanezca encendido hasta que finalicen ciertas acciones, y luego se apague.
Sin embargo, no solo quiero que el arduino se duerma, la alimentación debe estar desconectada. Esto es importante, porque tengo componentes adicionales que consumen energía del pin de 5 V (alrededor de 300 mA) y quiero que también se apaguen.
Mi primera idea fue usar un relé en paralelo al interruptor. Cuando se enciende el interruptor, el arduino también enciende el relé. Cuando se apaga el interruptor, el arduino sigue recibiendo alimentación a través del relé. El arduino detecta cuando el interruptor está apagado (el interruptor es bipolar, por lo que puedo detectar su estado con un pin de entrada digital) y apaga el relé cuando las acciones restantes están terminadas.
¿Hay una mejor manera de usar un relé? ¿Puedo usar un mosfet o algo más en lugar del relé?
Y quizás, en el futuro, necesitaré 9V para componentes adicionales, que también deberían apagarse cuando el arduino decida apagarse. Pero cuando el relevo / mosfet / ..? se coloca entre la batería y el arduino VIN Puedo conectar esos entre el relé / mosfet / ..? y el arduino. Así que esto debería ser simple.
Editar: Basándome en la respuesta de Passerbys, se me ocurrió esto:
El motor es solo un marcador de posición para mis componentes adicionales que agotan la energía de la batería y también deben apagarse.