cancel
Showing results for 
Search instead for 
Did you mean: 

STM32L151CCT6 nRST is floating ?!

TJ1999
Associate II

Hello developers,

I have three custom pcbs. The heart of all pcbs is the STM32L151CCT6 µC in LQFP48 Package. I connected all supply pins (VLCD, VDDA, VDD_x to 3.3V; VSS_x to ground). The BOOT0 pin is connect to gnd with an 20k pull-down resistor. The reset pin (NRST) is connect with an 100nF capacitor to GND and an 10k pull-up resistor to 3.3V.

I also checked all connections, especially the power supply pin connections. And I checked the supply voltage with an oscilloscope. All seems fine!

After connecting the ST-Link debugger to the PCB the microcontroller works fine. Also after progromming it and running the program several times.

But after around 10 minutes the Reset Pin starts to float at around 1.0V whearas it is connected in pull-up configuration to VDD as descriped before. This happens not on one board, it happens on all 3 pcbs!!!) In this state the µC cannot be reprogrammed anymore and the program doesn't run anymore, because the µC resets itself.

Why the hell does it do that???

Also, if the µC is completely erased the Reset pin is floating at some voltage after some time and it cannot be reprogrammed anymore.

I'm have searched for a solution for three days with no success. I hope someone could help me, please.

My schematic is attached. You can ignore the other GPIO Pins. I haven't connected them yet.

1 ACCEPTED SOLUTION

Accepted Solutions
Uwe Bonnes
Principal II

Do you really have no decoupling capacitor at VDD? Then expect any kind of strange behaviout. And those decoupling caps should connect VDD/VSS with short wires! nRST at the STM32 also has an internal pullup, R13 may be contraproductive. Remove it. C8 should also connect nRst to GND with short wires.

View solution in original post

8 REPLIES 8

Check, if all ground pins are indeed connected (check for bad solder joints).

Observe the NRST pin using an oscilloscope.

JW

Uwe Bonnes
Principal II

Do you really have no decoupling capacitor at VDD? Then expect any kind of strange behaviout. And those decoupling caps should connect VDD/VSS with short wires! nRST at the STM32 also has an internal pullup, R13 may be contraproductive. Remove it. C8 should also connect nRst to GND with short wires.

TJ1999
Associate II

Also without the external pull-up at NRST the behaviour is the same.

C8 is near the reset pin.

As mentioned before all power supply pins are at least double checked.

Well maybe I need some decoupling caps for my µC but I don't have any load attached to the circuit and the 3.3V power line is stable I checked it with an oscilloscope. Moreover I have an 10µF Capacitor 5mm next to the µC which is not shown in the schematic. If I connect the reset pin to 3.3V the µC never resets. So I think the decoupling capacitors are not the problem...

Some dancing NRST signals are attached.

0690X000006D4ZbQAK.png

Humm.

Does the chip run excessively hot? Is the power consumption high, does it change in time? Is this related to code running on the mcu? Try some trivial blinky. Is it connected to some external device - e.g. PC through DP/DM/USB? Try disconnecting it. Also try to disconnect the debugger.

JW

TJ1999
Associate II

The µC doesn't run hot. It draws around 15mA. If I force a 3.3V signal at the nrst pin by shorting it to 3.3V the µC draws additionally 5mA, maybe because the clock is starting? I also tried without the debugger, but same behaviour. I have 3 PCBs with that µC showing all the same problem. two PCBs are completly assembled with parts and the other one is completely empty. Only the reset and Boot0 pins are connected as descriped in the original post.

TJ1999
Associate II

@Uwe Bonnes​ I now updated my circuit (took a couple of months because of education) with decoupling capacitors and I replaced the µC to get better Performance and everything is working fine! Thanks a lot.

Well, I study electronics at the moment so I didn't yet know much about decoupling and so on...

But now I am glad that it works.

Thanks to all who helped me! Here the circuit of the working µC (The capacitors are placed as close as possible to the µC):

0690X000008Ahb3QAC.png

HKies.1
Associate

Did you find out what the problem was?

I am facing the same problem right now. My µC gets killed when i plug in USB. Same floating nrst then...

Hi,

as you can see in this thread, I had to place decoupling capacitors very close to the µC.

You can also have a look at Getting started with STM32L1xxx hardware development. Have a look at page 10. There is the power supply scheme with all decoupling capacitors needed.

Moreover, If you solder the pcb on your own, make sure that it is clean while operation. Flux can create an unwanted behaviour.

Additionally, if your µC gets into a "floating reset" behaviour, make sure your powersupply is stable.