0
\$\begingroup\$

I´m trying to design an analog circuit to use a push button to turn on an MCU and then use it the same push button to change modes. A "one push button circuit". To achieve that, I used a pmos to work as a switch on the power signal and then used a 2 nmos circuit for or signal circuit that controls the pmos. In beginning, the pmos gate is at 5V by the pull-up resistor 14. When the user makes a long press on the button, the nmos1 will turn on and consequently put the pmos gate to 0V. This will turn on the pmos and power the MCU, which will turn I/o port D6 to high (still pressing the button) that turn nmos2 and will keep the pmos ON. I then tested the circuit on the simullide and everything worked so far (files attached).

Things started to go wrong when I converted this to a real circuit. I used for nmos DMN53D0LQ-7 and for pmos I tried 2: PMN30XPX Nexperia, AOTS21115C‎ . To choose the transistors I looked to vth and I make sure the vth levels are compatible with TTL 3.3V (checking current vs vg and saturation zones), leakage currents, and vds. The nmos side worked as intended but the pmos didn´t work. The behavior was different on the two pmos. The AOTS21115C‎ never fully turned on but showed an interesting output, oscillated between 0.2V and 1.1V. The PMN30XPX was always on, never turned off, even if I connected the high side to the gate. Any suggestions will be welcome.

Can the PMOS characteristics be the source of the problem?

enter image description here

\$\endgroup\$
7
  • 1
    \$\begingroup\$ Not an answer, but why don't you use on-off controller chips like STM6600? There are dozens of chips from TI, STM and others, that do debouncing for you and can differentiate between short and long press and provide additional signals, like reset and menu. Some of them also designed to drive high side PMOS switch \$\endgroup\$
    – Maple
    Commented Dec 22, 2021 at 16:59
  • \$\begingroup\$ I will take a look on these chips, thank you @Maple \$\endgroup\$
    – bmalbusca
    Commented Dec 22, 2021 at 17:08
  • \$\begingroup\$ Are R14 are really 200K? It's kinda way too much. If there are long traces between it and the gate, noise could cause random switching. Try lowering it's value to somewhere around 4.7-10K. \$\endgroup\$
    – NStorm
    Commented Dec 23, 2021 at 10:09
  • \$\begingroup\$ Hi NStorm, yes it´s 200K. The reason for having this high value is because the current consumption, when the nmos turns on, the current drain is fixed by R14. When I measured with a multimeter the pull-up with nmos off, the 5V was there and when the push button is active, this R14 should not interfere since has high resistance. But I will try others values, thank you @NStorm \$\endgroup\$
    – bmalbusca
    Commented Dec 24, 2021 at 15:04
  • \$\begingroup\$ Multimeter won't show you the noise. How long is your trace between R14 & MOSFETS? \$\endgroup\$
    – NStorm
    Commented Dec 24, 2021 at 15:19

1 Answer 1

0
\$\begingroup\$

If R14 are 200Kohms it's too much for stable operation especially if there are long traces between it and the gate of MP12. Noise could cause random switching.

Try lowering it's value to somewhere around 4.7-10K.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.