cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F7: Output stays on an undefined level when set to low

PiPoint
Associate II

Hello together,

currently I'm facing a very strange issue:

I'm working with an STM32F777.

One GPIO of the MCU is used to enable the voltage to a sensor. This pin is initialized as

GPIO_InitStructure.Mode    = LL_GPIO_MODE_OUTPUT;
GPIO_InitStructure.OutputType   = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStructure.Pull    = LL_GPIO_PULL_UP;
GPIO_InitStructure.Speed   = LL_GPIO_SPEED_FREQ_HIGH;
GPIO_InitStructure.Alternate = LL_GPIO_AF_0;

This pin is set to low level after startup, to power the sensor.

To check the stability of the device we do sone endless update tests. This tests works quite good. But after about 5-6hours it crashes.

The cause of this is, that the enable pin is not set to low level correctly. With an oscilloscope I could see, that the output voltage of the pin is 2.4V.

From logs I could see, that the pin was initialized and set to low.

Following questions comes to my mind regarding this behaviour:

  • Why is the voltage only 2.4V and not one of the specified ones? (0V or 3.3V)
  • When and why can this happen?

Maybe someone has an idea and can help me.

Thanks in regards!

2 REPLIES 2

What pin on what board?

What sensor?

If the board crashes, kind of suggests some other issue. Debug the software issues better. Have a working hard fault handler, or better determine what "crash" actually means.

Check supplies, check VCAP pins and capacitors.

Have an FAE or other hardware engineer more thoroughly review the board and BOM

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

> What pin on what board?

+1 (also to all other of Clive's questions)

Read out the GPIO registers at that moment, using debugger or in any other way.

Check this pin, and also ground and supply pins (including analog) for shorts and bad solder joints.

JW