cancel
Showing results for 
Search instead for 
Did you mean: 

STM32L496 GPIO Fails to Fully Drive Output Pin PC1 to 0 V (Used for LDO EN Control)

Knanou
Associate II

 

Hello,

I am currently using the STM32L496 microcontroller in a product design. In this design, I use PC1 as an output to control the EN (enable) pin of a TPS78228 LDO. I'm encountering an issue where the LDO exhibits unexpected behavior when EN is driven low by the STM32.

 

Setup Details:

  • There is a 470 kΩ pull-down resistor between PC1 and the EN pin.
  • A 4.7 µF capacitor is connected to VOUT, as recommended.

  • When I manually pull EN directly to GND (bypassing PC1, when STM32 is powered-off), the LDO shuts down correctly, with VOUT dropping to 0 V.
  • However, when STM drives PC1 low, the EN pin voltage appears close to 0 V, but VOUT remains at 1.8 V.
  • Vin is within the recommended range and remains the same in both cases.

 

I’ve attached two scope captures showing two different behaviors. In both:

  • Blue = VEN (EN pin voltage)
  • Orange = VOUT (LDO output)

In Figure 1 STM32 is not in use and I manually drive the enable pin to the GND and to VCC interchangeably. As expected, VOUT drops to 0 V when VEN goes low.

In Figure 2, The STM32 is powered on, and PC1 is initially configured low. VEN is low, but VOUT rises to 1.8 V, even though it should be off. When STM32 drives PC1 high, VOUT rises to 2.8 V as expected. When STM32 drives PC1 low again, VOUT only drops to 1.8 V, not 0 V. When the STM32 is powered off, VOUT gradually drops to 0 V.

Questions:

  1. Could the 470 kΩ resistor limit the ability of PC1 to drive EN fully low? We tried with a smaller resistor (10kΩ), and we got the same results.
  2. Is there any known STM32 GPIO behavior (e.g., leakage current, startup configuration, low-power modes) that could prevent PC1 from sinking enough current?

  3. Are there other factors I should be considering? Has anyone experienced similar behavior?
1 ACCEPTED SOLUTION

Accepted Solutions
Knanou
Associate II

I just wanted to thank everyone for their helpful suggestions! They really guided me in the right direction and helped me understand the root cause of my issue.

I ended up driving all STM32 signals related to the radio chip low, and that gave me exactly the result I was hoping for — the output voltage dropped to 0V as expected.

Thanks again for your support!

View solution in original post

8 REPLIES 8
mƎALLEm
ST Employee

Hello @Knanou and welcome to the community,

Why is there a 470kΩ pull-down resistor between PC1 and the EN pin?

Do you have a common GND between STM32 and the LDOr? please check.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Hello @mƎALLEm and thank you for your reply!

 

The pull-down resistor is placed in parallel from PC1 to GND. 
Also I've checked and there is a common GND for STM32 and the TPS78228 LDO.

 

 


@Knanou wrote:

Hello @mƎALLEm and thank you for your reply!

The pull-down resistor is placed in parallel from PC1 to GND. 


I know but why? and why this value of 470k?

Did you test the GPIO PC1 without load (disconnect your LDO)? you set/reset the pin and check the voltage level with an oscilloscope?

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
TDK
Super User

Blue is EN/PC1? And yellow is VOUT from the LDO?

 

You say PC1 isn't being driving to 0V but it looks 0 V to me. Am I missing something?

TDK_0-1751950091149.png

 

If PC1/EN is low, it doesn't matter what is driving it or how. It's low.

If you get different behavior on the output with EN low with STM32 attached vs not, it's not due to how EN is being driven.

Show the full schematic. You're missing something else in there.

 

 

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

Thank you @TDK  and @mƎALLEm for your insightful comments and replies!

 

After removing the LDO, as per your recommendation, I measured again the output voltage where i previously measured it and it still read 1.8V (I've attached a picture). 

It is worth noting that this output of the LDO is passed as input to a radio chip, which has many inputs and outputs connected to the STM32.
I am now thinking of driving all of these shared signals low, and measuring again the voltage where the LDO output  was previously.

Knanou
Associate II

I just wanted to thank everyone for their helpful suggestions! They really guided me in the right direction and helped me understand the root cause of my issue.

I ended up driving all STM32 signals related to the radio chip low, and that gave me exactly the result I was hoping for — the output voltage dropped to 0V as expected.

Thanks again for your support!

Thanks for reporting back - now please mark that as the solution.

This shows how important it is that you provide the full schematic of your system!

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.

Sounds like the board was being backpowered.

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