Esto es similar a otras preguntas, pero siento que es diferente debido a la reutilización del botón de "encendido".
Quiero un botón de encendido momentáneo "enganchado".
Comportamiento:
-
El usuario presiona el botón momentáneo, mantiene presionado el tiempo necesario y el dispositivo se enciende.
-
Entre Encendido y Apagado, el mismo botón se reutilizará para otras funciones
-
Cuando se mantiene presionado durante 5 +/- segundos, el MicroController se apagará solo.
Restricciones de diseño:
-
La batería proporciona entre 3.7V y 2.9V durante su vida útil
-
El regulador de voltaje requiere Vin +/- 0.3V en el Pin de activación, salida de 3.1V.
-
MicroController opera a 3.1V
-
El estado alto del pin de salida del micro controlador es 2.7V máx.
Debouncing: en este caso, no me preocupa deshacer el cambio, si el usuario no lo mantiene presionado el tiempo suficiente para que el MicroController establezca su pin de salida digital. Alto el dispositivo no se enciende.
He desarrollado el siguiente esquema, qué tipo de trabajos.
Falstad Circuit Simulator of my schematic
Asume 3.7V de la batería. Utiliza una entrada analógica para el botón de encendido, que luego utiliza la variación de voltaje para determinar si se ha presionado el botón. En el diseño actual, la diferencia es de 0.12 V (de 3.4 a 3.52), pero el MicroController tiene un ADC de 12 bits, por lo que no debería ser un problema, además puedo ajustar el rango de sensibilidad del ADC.
Preguntas:
¿Cuál es la diferencia entre la realidad y el simulador?
¿Hay una mejor manera?
¿Cómo puedo obtener una mayor diferencia de voltaje en la entrada del botón? He probado muchas combinaciones diferentes, pero aumentan el rango de voltaje por encima del máximo máximo de entrada de 3,6 V especificado en la hoja de datos.
No estoy entusiasmado con la "Corriente de fuga" cuando el Pin de alimentación controlada de uC es bajo, ¿alguna sugerencia?
Gracias por cualquier idea / sugerencia / respuesta.