Potencia momentánea del interruptor: presione para encender, el microcontrolador puede apagarse

2

Así que tengo este circuito aquí. Idealmente, permite que un interruptor momentáneo conecte el circuito de alimentación y, cuando se libere, permanecerá encendido.

Esto es lo que creo que hace este circuito.

  1. Se presiona el botón
  2. Flujos de energía y el microcontrolador comienza a ejecutarlo.
  3. El software dice que debe suministrar voltaje en PB3
  4. El encendido del transistor conecta el circuito a tierra
  5. Se suelta el botón y el transistor permanece conectado.

Esto es lo que todavía no hace:

  1. Mientras está encendido, mantenga presionado el botón durante 1 segundo (¿cómo haría esto?)
  2. micro avisos una pulsación larga en el botón
  3. El software dice que se debe eliminar el voltaje del pin PB3
  4. El transistor se desconecta y el circuito se desconecta

La única parte de eso que no entiendo es cómo el chip puede detectar el estado del botón si ambos lados están conectados a tierra.

Entonces, dos preguntas relacionadas: ¿Funcionará esto para prender la alimentación? ¿Y cómo puede el chip saber el mismo estado del botón para que se apague solo?

    
pregunta Alex Wayne

2 respuestas

1

Aquí hay una posible solución para ti:

simular este circuito : esquema creado usando CircuitLab

El pin A0 del microcontrolador es un pin capaz tanto de salida digital como de entrada analógica. Este pin se configura como entrada durante el inicio.

Este circuito está cableado para que la tensión de la puerta de M1 (también conocida como entrada analógica A0 del microcontrolador) se asigne a esto:

  • \ $ 0 \ mathrm {V} \ $: el circuito se apaga, o apaga todo este circuito.
  • \ $ \ frac {1} {2} V_ {cc} \ $: el circuito se está ejecutando, el botón no está presionado.
  • \ $ V_ {cc} \ $: se presiona el botón.

Encendido: el botón SW1 se presiona hacia abajo y + 5V está presente en la puerta de M2, presionando M2 y, a su vez, presionando M1, activando todo el circuito. El microcontrolador comienza y espera hasta que el voltaje del pin A0 caiga a \ $ \ frac {1} {2} V_ {cc} \ $ y comience el programa.

Apagado: cuando el pin A0 se lleva a + 5V durante varios segundos y se suelta , cambie el pin A0 a la salida digital y genere un 0 lógico, apagando y apagando M2 M1 , apagando este circuito.

    
respondido por el Maxthon Chan
0

No puede hacer esto con su circuito, no puede sentir si el interruptor es prensatela o no.

Pero podría hacerlo si tuviera un interruptor de terminal doble. En este caso, podría sentir la pulsación de la tecla.

Puedes usar un:

  • Interruptor de doble tiro de un solo polo
  • Interruptor de doble polo

Siempre conectas la parte normalmente abierta para suministrar la MCU, usa el otro terminal / polo para detectar la pulsación y el apagado de la tecla.

    
respondido por el iggy

Lea otras preguntas en las etiquetas