Le microcontrôleur STM brûle à chaque fois

22

J'ai une certaine expérience de travail avec stm32 mais je ne les ai utilisés que sur des cartes de développement.

J'ai récemment essayé de souder stm32 et stm8 sur une simple carte de dérivation et de les programmer avec mon clone st-linkv2. soudé stm32 sur panneau de dérivation

Lors de la première mise sous tension, le mcu fait quelques petits bruits comme des brûlures après quelques secondes, et 2 minutes plus tard son dessin 100mA et le tabagisme.

Je pense qu'il y a des détails importants qui me manquent. Qu'est-ce qui pourrait mal tourner dans une configuration simple comme celle-ci? (uniquement vdd, vss, capuchon de découplage et st-link)

J'ai essayé plus de 20 fois avec stm8 et stm32.

J'ai obtenu le capuchon de découplage aussi près que possible et je les ai fournis avec 3,3v.

Quelques fois, j'ai pu programmer et vérifier le flash, mais il a montré un comportement étrange * et a recommencé à fumer quelques minutes plus tard.

J'ai essayé de souder par traînée, une soudure régulière avec une pointe smd et une température aussi basse que 260 ° C et un temps de recharge après chaque tampon. J'ai également essayé un pistolet à air chaud sur 270C et je suis presque sûr que le problème n'est pas à souder.

J'ai également essayé avec NRST pull-up et BOOT0 pull-down.

* Comportement étrange: "aléatoire" comme le chronométrage sur un simple clignotant à LED ou un signal PWM qui ne descend qu'à environ 2,8 V au lieu de 0 V. dans l'ensemble, cela fonctionne un peu, mais seulement pendant 1 minute.

** le problème n'est pas st-link. son clignotant le dev-board très bien

EDIT 1: Voici le schéma (pour stm32) (Connexions à ST-Link marquées d'étiquettes):

entrez la description de l'image ici

entrez la description de l'image ici

il n'y a rien en dessous. juste une autre empreinte (non peuplée) connectée aux broches.

EDIT 2: test de continuité: pas de court-circuit, tous les contacts des broches sont OK

EDIT 3: connecté VDDA et VDD et ajouté un autre 4.7uF sur VDD. encore frit. VDD mesuré directement sur l'appareil: 3,36 V

EDIT 4: comportement de tirage actuel: dans tous les cas, lorsque la puce est frite, elle tire autour de 20-40mA et monte parfois soudainement à 100-240mA pendant quelques secondes, puis se met à zéro (moins de 10mA). et reste à zéro pendant un certain temps avant de recommencer.

MISE À JOUR: j'ai soudé un autre STM8S003F3P6,1uF sur VCAP et 2x100nF et 10uF sur VDD. et utilisé une batterie comme source et fait un petit multiplicateur de capacité et un émetteur suiveur pour faire le 3,3v avec beaucoup de bouchons en céramique et à faible ESR, et une limite de courant réglée sur 15mA. la tension avait moins de 30 mV de bruit sur 50 MHz. puis j'ai connecté le MCU (fraîchement soudé). la consommation de courant était inférieure à 4 mA et la tension était stable. je l'ai laissé être. après une minute ou deux, il a soudainement commencé à dépasser la limite de 15mA et à déclencher le PDR. et maintenant il commence à le faire immédiatement (même avec le NRST affirmé). semble que celui-ci soit parti aussi ...

Niko.
la source
6
Si vous mesurez la continuité / résistance entre les broches et la carte de circuits imprimés nue , il n'y a pas de connexions cachées? (Mesurer la broche 1 contre 2 ... 20, la broche 2 contre 3..20, etc.)
Huisman
13
Ma meilleure supposition est que vous appliquez la tension d'alimentation au mauvais endroit sur votre microcontrôleur.
Marcus Müller
4
Montrez-nous des photos de votre configuration de câblage.
DKNguyen
9
Avec le nombre absurde de jetons que vous avez soufflé, il y a quelque chose de fondamentalement faux ici. Essayez une source d'alimentation complètement différente, comme emprunter le 3v3 à la carte de développement.
Chris Stratton
3
Comment connectez-vous tout à ces cartes de dérivation? La publication d'une photo serait utile. S'il s'agit d'une planche à pain, est-elle endommagée ou défectueuse? Pour confirmer que vous n'avez pas de lot de puces défectueux ou contrefait, vous pouvez remplacer la puce de votre carte de développement par l'une d'entre elles et voir si cela fonctionne.
écho le

Réponses:

32

V DDA n'est pas connecté.

Note d'application AN4325 Pour commencer avec le développement matériel des séries STM32F030xx et STM32F070xx ,

L' alimentation V DDA peut être égale ou supérieure à V DD . Cela permet à V DD de rester faible tout en fournissant les performances complètes pour les blocs analogiques.

Lorsqu'une seule alimentation est utilisée, V DDA doit être connecté en externe à V DD .

Connectez donc la broche 5 à la broche 16 avant de réessayer.

berendi - pour protester
la source
1
Remarqué cela dans cette note d'application - "Le niveau de tension VDDA doit toujours être supérieur ou égal au niveau de tension VDD et doit être fourni en premier."
HandyHowie
5
Le simple fait de les connecter fonctionne très bien.
berendi - manifestant le
2
@berendi je n'étais pas conscient de cette nécessité. Merci beaucoup. mais j'ai attaché VDDA et VDD ensemble et la même chose s'est produite. VDDA doit-il réellement arriver "avant" VDD? le document dit qu'ils peuvent être liés ensemble
Niko.
1
@Niko. Je l'ai vu fonctionner avec les deux broches d'alimentation simplement connectées l'une à l'autre. Faites attention aux exigences de capacité indiquées dans d'autres réponses.
berendi - protestant le
17

Avez-vous regardé la forme d'onde de votre alimentation avec un oscilloscope?

Le régulateur de tension linéaire à faible chute de tension LF33 que vous semblez utiliser nécessite un minimum de 2µF de capacité de sortie supplémentaire pour la stabilité, votre schéma ne montre que 100nF. De plus, je ne vois aucune capacité d'entrée devant le régulateur.

Si le régulateur oscille, il peut appliquer par intermittence le 5V complet à vos broches d'alimentation du MCU. Cela dépasserait la cote maximale de 4V pour le STM32.

Edgar Brown
la source
10

SI vous n'êtes pas au courant de l '«effet de verrouillage SCR enfoui» CMOS avec des effets de dommages causés par la chaleur à travers les entrées augmentant plus que la tension d'alimentation de 0,3 V, vous n'oublierez jamais maintenant.

Cela revient à appliquer des signaux analogiques avant de connecter VddA.

La note d'application p11 indique clairement ce qui doit être fait, mais pas la raison.

"• Le POR surveille uniquement la tension d'alimentation du VDD. Pendant la phase de démarrage, le VDDA doit arriver en premier et être supérieur ou égal au VDD.
• Le PDR surveille à la fois les tensions d'alimentation du VDD et du VDDA.
• Cependant, le superviseur de l'alimentation du VDDA peut être désactivé (en programmant un bit d'option dédié VDDA_MONITOR) pour réduire la consommation d'énergie si la conception de l'application garantit que VDDA est supérieur ou égal à VDD "

Tony Stewart Sunnyskyguy EE75
la source
je ne l'étais pas, merci !. mais quels signaux arrivent avant VDDA? dans ma séquence d'alimentation, je connecte VDD et VDDA (liés ensemble) à 3.3, puis connecte ST-Link. la note d'application indique que vous pouvez lier VDD et VDDA ensemble.
Niko.
OK alors l'ESD est une autre cause de cela
Tony Stewart Sunnyskyguy EE75
voir Edit 4. ce type de comportement de tirage actuel est-il dû à une puce endommagée verrouillée?
Niko.
Cela dépend de la chaleur qu'il fait> 200 ° C pendant> 10 s ?? mais 1W j'en doute .. Cause inconnue
Tony Stewart Sunnyskyguy EE75
9

Dans mon expérience professionnelle, j'ai trouvé le STM32 à des tensions transitoires extrêmement sensibles sur les rails d'alimentation et GPIO. Assurez-vous que vos alimentations ne dépassent pas au démarrage. La chose que vous pouvez faire pour atténuer cela est d'ajouter entre 10uF et 100uF à la sortie de votre régulateur de tension. Bonne chance et dites-nous comment ça se passe.

Ryan Vasquez
la source
7

Jetons un coup d'œil à la fiche technique LF33: https://www.st.com/resource/en/datasheet/cd00000546.pdf

Output bypass capacitance:
ESR = 0.1 to 10 Ω
Io = 0 to 500 mA
Minimum: 2μF, Typical: 10μF

Une capacité de 100 nF, loin de LDO ne fera pas l'affaire. Essayez de vérifier la ligne électrique avec l'oscilloscope. Et ne faites pas frire le prochain MCU sans ajouter un condensateur électrolytique 10-47uF LOW ESR près des broches LF33.

Mikołaj Tutak
la source
6

Où avez-vous l'uC? Sont-ils authentiques?

J'ai travaillé avec beaucoup de stmf1 et je n'ai eu aucun problème avec le soudage esd ou à température plus élevée

Avez-vous essayé de ne pas flasher l'appareil? Laissez-le juste pendant un certain temps.

Où obtenez-vous la puissance du 5v? C'est peut-être une fuite de cela. Essayez de l'alimenter depuis USB à partir du même PC que celui que vous utilisez. Essayez d'obtenir un convertisseur ftdi pour le débogage série et alimentez-le directement avec la sortie 3v3

D'après ce que j'ai obtenu, votre simple test clignote. Droite? Quel courant utilisez-vous? La broche est fixée sur le côté haut ou bas? Essayez d'utiliser un npn ou un fet similaire sur le côté inférieur pour basculer cette led. Peut-être que le courant l'endommage. Bien que je l'ai vu graver des IO, pas un appareil comme celui-ci.

Votre école n'affiche pas vdda, je ne sais pas si elle alimente autre chose que adc, mais elle ne devrait pas non plus graver d'appareil.

Ma meilleure supposition est la référence de différents appareils comme l'alimentation et USB

Eduardo A Sugai
la source
les uC étaient authentiques. j'ai essayé de ne pas faire clignoter l'appareil (dernière modification du message) les LED étaient connectées à 1K bas
Niko.
5

Vérifiez la fiche technique pour le courant maximum que le F030 va tirer et définissez la limite de courant sur votre alimentation de banc pour fournir un peu moins que cette quantité pour protéger le micro. Je n'ai pas vérifié la fiche technique de votre LDO (LF33) mais pour la stabilité, vous aurez besoin d'un condensateur en vrac du côté alimentation et d'un condensateur de plus petite valeur du côté micro. Ce dernier ne doit pas être confondu avec le capuchon de découplage pour VDDD et VDDA sur le micro. Enfin, quelqu'un d'autre a déjà mentionné la fourniture du schéma de la carte. Beaucoup de ces cartes tierces supposent de l'alimentation et de la mise à la terre sur les broches d'angle. Ce n'est pas le cas ici. Vous bénéficierez également de l'utilisation du STM32CubeMx gratuit pour définir vos broches et générer le code de configuration.

Rex
la source
3

La stabilité du régulateur est ici l'astuce. Les charges légères sont plus difficiles à maintenir stables, sans capacité supplémentaire.

Une chose similaire s'est produite une fois avec un LM317. La tension dans ce circuit est allée vers 12v. Le contrôle en série peut mal tourner.

J'ai travaillé avec des processeurs NXP Arm7 qui avaient un problème de verrouillage de mise sous tension, sur les broches d'E / S. Je soupçonne que votre problème est celui de la stabilité, pas le verrouillage.

Andrew Perkins
la source
3

J'ai finalement trouvé ce qui causait tout cela. Il semble que j'ai eu des problèmes dans mes circuits de mise à la terre et qu'une tension CA élevée apparaissait sur l'appareil pendant le soudage et la mise sous tension et qu'il n'y avait pas de masse commune présente. Bien que le chemin soit assez élevé en impédance, mais apparemment, cela a causé beaucoup de mal ... J'ai un STM8 qui clignote une LED depuis plus de 5 minutes maintenant !!! (Quelle réussite :)) mais je n'ai pas non plus utilisé de flux de soudure sur cette carte, car je soupçonnais que les résidus de flux posaient également des problèmes ...

Niko.
la source
2

Mikołaj Tutak l'a frappé à la tête. Juste quelques notes.

L'ESR requis sera atteint par à peu près n'importe quel plafond. Jetez quelques électrolytes bon marché de 10uF ou 4.7uF en parallèle sur la sortie et tout ira bien. La fiche technique ne demande que 2,2 uF, mais un supplément ne fera pas de mal.

J'ai utilisé ce MCU exact (et le K6 et CC d'ailleurs) dans au moins 4 modèles différents. Jamais frit. J'ai utilisé des bouchons MLCC bon marché pour le bypass, mais sur mon entrée, j'avais des bouchons AL solides de 10 uf à 22 uF; sauf dans un cas, j'avais du tantale 10 uF au lieu de l'AL. Toutes ces conceptions étaient à une seule couche au-dessus d'un plan de masse. Aucun régulateur à bord.

Dans tous mes tests, mon alimentation était identique, 13,8 V (à partir d'une radio PS) -> un commutateur 12V à 5V (tripes d'un dongle d'alimentation USB bon marché, dans un magasin à un dollar) -> 3,3V PS à l'aide d'un LM1084 . Environ 120 uF au total sur la sortie. Pas cher 47uF x 2 et 10uF x 2.

GB - AE7OO
la source