Skip to main content
Associate II
July 14, 2025
Solved

STM32 GPIO NMOS

  • July 14, 2025
  • 5 replies
  • 414 views

What is the maximum current that the STM32 GPIO can withstand when set to open-drain mode and the NMOS is on without getting damaged?

Best answer by TDK

You should limit it to 20 mA, not 25 mA. The absolute maximum ratings may degrade performance over time.

5 replies

Ozone
Principal
July 14, 2025

I think you need to be more specific here.
First, there is no continuous gate current, at least in theory.But driving at high speed / frequency, the gate capacity needs to be charged / discharged, which might require a substantial current.

Second, many MOSFETs require a gate voltage (Uth) beyond 3.3V the MCU cannot achieve. You would need driver circuitry in this case.

AScha.3
Super User
July 14, 2025

Just see ds :

AScha3_1-1752483991710.png

 

AScha3_0-1752483958192.png

AScha3_2-1752484091013.png

 

"If you feel a post has answered your question, please click ""Accept as Solution""."
jacklinAuthor
Associate II
July 14, 2025

In fact, my application is like this:

The GPIO port of ST is configured as open - drain, and the port is connected to a π - type filter, that is, a 104 capacitor + a magnetic bead + a 104 capacitor. When the open - drain port is pulled low, the two 104 capacitors will discharge and the current will flow through the lower transistor inside the MCU NMOS. Will this cause the lower transistor to burn out due to over - current?

AScha.3
Super User
July 14, 2025

So simply limit the current with a resistor at the pin to 25mA max : R = Upin /25mA

"If you feel a post has answered your question, please click ""Accept as Solution""."
Andrew Neil
Super User
July 14, 2025

As @AScha.3 said, the values are in the datasheet.

Note that there is both a per-pin limit, and a total-chip limit.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
TDK
TDKBest answer
Super User
July 14, 2025

You should limit it to 20 mA, not 25 mA. The absolute maximum ratings may degrade performance over time.

"If you feel a post has answered your question, please click ""Accept as Solution""."