Hello
I experienced a bad problem with my micro controller STM32F103RBT6. after many times of working on a board say about 1 month the MCU VDD-GND got short circuited. After removing the MCU from board I found that VDD_GND pins of MCU are short. I checked the 3.3V Regulator output and other power sources and found nothing out of operation condition. There was not excessive current consumption or over voltage on IO pins. Now the board is woking with new MCU. Has any body faced such a problem ever? what makes MCU to break?
Not a complete list but some things to consider.
ESD can break the chip.
Too much current on too many I/O pins is also dangerous - there are limits per pin, per port and for the total chip.
External signals drawing an I/O pin below GND or above VCC.
Voltages applied to I/O pins when the processor isn't powered.
Inductive load without freewheel diodes.
Not all VCC and/or GND pins used.
Too slow ramp-up/ramp-down of supply voltages.
Chips with multiple supply voltages, not taking into account the required sequence to power up/down the circuit.
Tristated I/O pins with no external pull-up/pull-down to stabilize the pins.
Input pins held in the forbidden zone between logic high and logic low.
Buggy code overclocking parts of the chip.
Buggy code changing input pins into output pins.
Thanks for points that are really interesting to me, so let me describe my case:
1-Possibility for drawing IO pin about 2V below GND in case of user mistake. 2-Voltage may be applied to the IO pins when the MCU isn't powered. 3-Too slow ramp-up/ramp-down of supply voltages, because I used a 4700uF capacitor parallel with main DC voltage.
I think I have got the reason why my chip is broken.
Many chips will short-circuit overvoltages (with or without power to VCC) to the VCC. So an upowered processor that gets a voltage on an I/O pin will basically try to power itself from that I/O pin.
So whenever possible, try to use series resistors on your inputs to limit the amount of current that may flow through the body diodes.
4700uF is rather huge for a microprocessor supply. The current spikes from a processor might be large but they are very short. So a much smaller capacitor should normally be used directly at the regulator. The datasheet for the regulator will normally recommend suitable capacitors on the input and output of the regulator - the load regulation capability of the regulator is affected by the capacitor size. And then you should have a number of capacitors as close as possible to all the different VCC pins of the different chips to both even the supply voltage to the chips and to reduce the noise radiated from the PCB traces.
Possibility for drawing IO pin about 2V below GND in case of user mistake.
that's a baddie. look at "absolute maximum ratings" in the datasheet. They do not use the word 'absolute' without reason.
Erik