Mikrokontroler STM pali się za każdym razem


22

Mam pewne doświadczenie w pracy ze stm32, ale zawsze używałem ich na płytach programistycznych.

Niedawno próbowałem wlutować stm32 i stm8 na prostej płytce zrywalnej i zaprogramować je za pomocą mojego klonu st-linkv2. wlutowany stm32 na płycie wyłamywanej

Przy pierwszym uruchomieniu mcu wydaje kilka dźwięków, takich jak palenie po kilku sekundach, a 2 minuty później pobiera 100mA i pali.

Myślę, że brakuje mi ważnych informacji. Co może pójść nie tak w takiej prostej konfiguracji? (tylko vdd, vss, cap odsprzęgający i st-link)

Próbowałem ponad 20 razy zarówno z STM8, jak i STM32.

Dostałem nakrętkę odsprzęgającą tak blisko, jak to możliwe i dostarczyłem im 3.3v.

Kilka razy udało mi się zaprogramować i zweryfikować flash, ale pokazało to dziwne zachowanie *, a po kilku minutach znowu wybuchłem dymem.

Próbowałem lutowania ciągłego, regularnego lutowania z końcówką smd i temperaturą już 260 ° C oraz czasem odnowienia po każdej padzie. Próbowałem także pistoletu na gorące powietrze w 270 ° C i jestem pewien, że problem nie polega na lutowaniu.

Próbowałem także z podciąganiem NRST i rozwijaniem BOOT0.

* dziwne zachowanie: „losowe” jak czas na prostym migaczu LED lub sygnał PWM, który spada tylko do około 2,8 V zamiast 0 V. ogólnie rzecz biorąc, jego „trochę” działa, ale tylko przez 1 min.

** problemem nie jest st-link. jego flashowanie tablicy deweloperów jest w porządku

EDYCJA 1: Oto schemat (dla STM32) (Połączenia z ST-Link oznaczone etykietami):

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

nie ma nic pod spodem. po prostu kolejny (niezamieszkany) ślad podłączony do pinów.

EDYCJA 2: test ciągłości: brak zwarć, wszystkie styki pinów są w porządku

EDYCJA 3: połączono VDDA i VDD i dodano kolejne 4.7uF na VDD. wciąż smażone. VDD mierzone bezpośrednio na urządzeniu: 3,36 V.

EDYCJA 4: bieżące zachowanie podczas rysowania: we wszystkich przypadkach, gdy chip jest smażony, pobiera około 20-40 mA, a czasami nagle wzrasta do 100-240 mA na kilka sekund, a następnie zeruje (mniej niż 10 mA). i pozostaje na zero przez jakiś czas przed ponownym uruchomieniem

AKTUALIZACJA: przylutowałem kolejny STM8S003F3P6,1uF na VCAP i 2x100nF i 10uF na VDD. i użył baterii jako źródła i wykonał niewielki mnożnik pojemnościowy i podążający za emiterem, aby uzyskać 3,3 V z dużą ilością ceramicznych i niskich ESR, a limit prądu ustalono na 15 mA. napięcie miało mniej niż 30mV szumów powyżej 50MHz. potem podłączyłem MCU (świeżo lutowane). pobór prądu był mniejszy niż 4 mA, a napięcie było stabilne. zostawiłem to. po minucie lub dwóch nagle zaczął przekraczać limit 15 mA i uruchomić PDR. a teraz zaczyna to robić natychmiast (nawet z zapewnieniem NRST). wygląda na to, że tego też nie ma ...


6
Jeśli mierzysz ciągłość / rezystancję między pinami a nieizolowaną płytką drukowaną, nie ma ukrytych połączeń? (Zmierz pin 1 w stosunku do 2 ... 20, pin 2 w stosunku do 3..20 itd.)
Huisman

13
Domyślam się, że przykładasz napięcie zasilające do niewłaściwego miejsca na mikrokontrolerze.
Marcus Müller,

4
Pokaż nam zdjęcia swojej instalacji elektrycznej.
DKNguyen

9
Z absurdalną liczbą żetonów, które zdmuchnąłeś, jest tu coś zasadniczo nie tak. Wypróbuj zupełnie inne źródło zasilania, na przykład pożyczenie 3v3 z planszy.
Chris Stratton

3
Jak podłączasz wszystko do tych tablic? Pomocne byłoby opublikowanie zdjęcia. Jeśli jest to płyta chlebowa, czy jest uszkodzona czy wadliwa? Aby potwierdzić, że nie masz wadliwej lub podrobionej partii żetonów, możesz wymienić żeton na swojej płycie deweloperów na jeden z nich i sprawdzić, czy tam działa.
echo

Odpowiedzi:


32

V. DDA nie jest podłączone.

Nota AN4325 Rozpoczęcie pracy z rozwojem sprzętu serii STM32F030xx i STM32F070xx mówi:

Zasilanie V DDA może być równe lub wyższe niż V DD . To pozwala V VDD pozostaje na niskim poziomie, zapewniając jednocześnie pełną wydajność bloków analogowych.

Gdy używane jest pojedyncze źródło zasilania, V DDA należy podłączyć zewnętrznie do V DD .

Więc podłącz styk 5 do styku 16 przed ponowną próbą.


1
Zauważyłem to w tej notatce aplikacyjnej - „Poziom napięcia VDDA musi zawsze być wyższy lub równy poziomowi napięcia VDD i musi być podany jako pierwszy”.
HandyHowie

5
Po prostu ich połączenie działa dobrze.
berendi - protestuje

2
@berendi Nie byłem świadomy tej konieczności. Wielkie dzięki. ale powiązałem VDDA i VDD razem i to samo się stało. czy VDDA faktycznie musi przybyć „przed” VDD? dokument mówi, że można je ze sobą połączyć
Niko.

1
@Niko. Widziałem, jak działa z obydwoma pinami zasilania po prostu połączonymi ze sobą. Zwróć uwagę na wymagania dotyczące pojemności wskazane w innych odpowiedziach.
berendi - protestuje

17

Czy spojrzałeś na przebieg swojego zasilacza za pomocą oscyloskopu?

LF33 liniowy regulator napięcia o niskim zaniku napięcia, którego używasz, wymaga minimum 2µF dodatkowej pojemności wyjściowej dla stabilności, twój schemat pokazuje tylko 100nF. Ponadto nie widzę żadnej pojemności wejściowej przed regulatorem.

Jeśli regulator oscyluje, może sporadycznie przykładać pełne 5 V do pinów zasilania MCU. To przekroczyłoby maksymalną wartość 4 V dla STM32.


10

JEŻELI nie jesteś świadomy „zakopanego efektu zatrzasku SCR” CMOS z efektami uszkodzenia strzelania poprzez wzrost mocy wejściowej większej niż napięcie zasilające o 0,3 V, nigdy nie zapomnisz.

Jest to to samo, co zastosowanie sygnałów analogowych przed podłączeniem VddA.

Nota p11 wyraźnie wskazuje, co należy zrobić, ale nie przyczynę.

„• POR monitoruje tylko napięcie zasilania VDD. Podczas fazy rozruchu VDDA musi przybyć pierwszy i być większy lub równy VDD.
• PDR monitoruje zarówno napięcie zasilania VDD, jak i VDDA.
• Jednak nadzorca zasilania VDDA może być wyłączone (programując dedykowany bit opcji VDDA_MONITOR) w celu zmniejszenia zużycia energii, jeśli projekt aplikacji zapewnia, że ​​VDDA jest wyższe lub równe VDD ”


nie byłem, dzięki! ale jakie sygnały nadchodzą przed VDDA? w mojej sekwencji mocy łączę VDD i VDDA (powiązane) do 3.3, a następnie łączę ST-Link. nota aplikacyjna mówi, że możesz połączyć VDD i VDDA razem.
Niko.

OK, więc ESD jest kolejną przyczyną tego
Tony Stewart Sunnyskyguy EE75

patrz Edycja 4. czy tego rodzaju zachowanie przy pobieraniu jest spowodowane zatrzaśniętym uszkodzonym układem?
Niko.

Zależy jak gorąco robi się> 200'C przez> 10s ?? ale wątpię 1
W.

9

W moim doświadczeniu zawodowym znalazłem STM32 na wyjątkowo wrażliwe napięcia przejściowe na szynach zasilania i GPIO. Upewnij się, że twoje zasilacze nie przesadzają podczas uruchamiania. Aby to złagodzić, należy dodać od 10 do 100 uF na wyjściu regulatora napięcia. Powodzenia i daj nam znać jak poszło.


7

Rzućmy okiem na arkusz danych 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

Pojemność 100nF, daleko od LDO, nie spełni zadania. Spróbuj sprawdzić linię zasilania za pomocą oscyloskopu. I nie smażyć następnego MCU bez dodania kondensatora elektrolitycznego 10-47uF LOW ESR w pobliżu pinów LF33.


6

Skąd masz uC? Czy są autentyczne?

Pracowałem z dużą ilością STMF1 i nie miałem problemów z ESD ani lutowaniem w wyższej temperaturze

Czy próbowałeś nie flashować urządzenia? Po prostu zostaw to na jakiś czas.

Gdzie dostajesz moc do 5v? Może to jakiś wyciek z tego. Spróbuj zasilić go z USB z tego samego komputera, na którym używasz flashera. Spróbuj uzyskać konwerter ftdi do szeregowego debugowania i zasil go bezpośrednio wyjściem 3v3

Z tego co mam, twój prosty test miga diodą LED. Dobrze? Jakiego prądu używasz? Kołek jest przymocowany po wysokiej lub dolnej stronie? Spróbuj użyć npn lub podobnego fet na dolnej stronie, aby przełączyć tę diodę. Może prąd go niszczy. Chociaż widziałem, jak pali IO, nie takie urządzenie.

Twoja szkoła nie wyświetla VDDY, nie jestem pewien, czy zasila ona coś innego niż ADC, ale nie powinna również nagrywać urządzenia.

Moje najlepsze przypuszczenie to odniesienie z różnych urządzeń, takich jak zasilacz i USB


UC były autentyczne. starałem się nie flashować urządzenia (edycja po ostatnim wpisie) diody LED były połączone z 1K lowside
Niko.

5

Sprawdź w arkuszu danych maksymalny prąd pobierany przez F030 i ustaw limit prądu na twoim stanowisku, aby dostarczyć nieco mniej niż ta ilość, aby chronić mikro. Nie sprawdziłem arkusza danych dla twojego LDO (LF33), ale dla stabilności potrzebujesz kondensatora po stronie zasilania i kondensatora o mniejszej wartości po stronie mikro. Tego ostatniego nie należy mylić z pułapką odsprzęgającą dla VDDD i VDDA na mikro. Wreszcie ktoś już wspomniał o dostarczeniu schematu planszy. Wiele z tych zewnętrznych płyt zakłada moc i uziemienie na kołkach narożnych. W tym przypadku tak nie jest. Skorzystasz również, korzystając z bezpłatnego STM32CubeMx, aby pomóc ustawić piny i wygenerować kod konfiguracji.


3

Najważniejsza jest tutaj stabilność regulatora. Lekkie obciążenia są trudniejsze do utrzymania bez stabilizacji, bez dodatkowej pojemności.

Miałem podobną sytuację raz z LM317. Napięcie w tym obwodzie zbliżyło się do 12 V. Sterowanie seriami może się nie powieść.

Pracowałem z procesorami NXP Arm7, które miały problem z blokowaniem zasilania, na pinach I / O. Podejrzewam, że twój problem dotyczy stabilności, a nie zatrzaśnięcia.


3

W końcu odkryłem, co było przyczyną tych wszystkich. Wygląda na to, że miałem problemy z obwodem uziemiającym i podczas lutowania i włączania zasilania pojawiało się na nim wysokie napięcie prądu przemiennego i nie było wspólnego uziemienia. Chociaż ścieżka miała dość wysoką impedancję, ale najwyraźniej spowodowała wiele szkód ... STM8 miga diodą LED przez ponad 5 minut !!! (Co za osiągnięcie :)), ale nie użyłem również topnika do lutowania na tej płycie, ponieważ podejrzewałem, że pozostałości topnika również powodują pewne problemy ...


2

Mikołaj Tutak uderzył to w głowę. Tylko kilka notatek.

Wymagany ESR zostanie spełniony przez prawie każdy limit. Rzuć kilka tanich elektrolitów 10 uF lub 4,7 uF równolegle na wyjściu, a wszystko będzie dobrze. Arkusz danych wymaga tylko 2.2uF, ale dodatkowe nie zaszkodzi.

Użyłem tego dokładnego MCU (i K6 i CC w tym przypadku) w co najmniej 4 różnych projektach. Nigdy nie smażyłem. Użyłem tanich czapek MLCC do obejścia, ale na wejściu miałem stałe czapki AL 10uf do 22uF; Z wyjątkiem jednego przypadku miałem tantal 10uF zamiast AL. Wszystkie te projekty były jednowarstwowe na powierzchni ziemi. Brak regulatora na pokładzie.

We wszystkich moich testach mój zasilacz był identyczny, 13,8 V (z radia PS) -> przełącznik 12 V do 5 V (wnętrzności taniego klucza USB, nie mniej niż sklep ze dolarami) -> 3,3 V PS przy użyciu LM1084 . Łącznie na wyjściu około 120uF. Tanie 47uF x 2 i 10uF x 2.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.