logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATMega16] Uszkodzenie po podaniu 9.6V na piny PC6 i PC7, brak PWM i odczytu flash

Datrixx 30 Sty 2010 06:29 1563 10
REKLAMA
  • #1 7614238
    Datrixx
    Poziom 11  
    Posty: 7
    Witam.

    Zaprogramowałem układ z mikroprocesorem ATmega16 tak aby generował sygnał PWM o wypełnieniu 50% na obydwu kanałach PWM jednocześnie. Układ działał rewelacyjnie. Zegar taktujący w mikroprocesorze ustawiony był na 1MHZ (wewnętrzny). Skonfigurowałem fusebity tak aby mikroprocesor działał na prawidłowo podłączonym do niego rezonatorze 10MHz. Po tej zmianie działał prawidłowo. Przez przypadek podłączyłem do mojej ATmegi16, do pinów 28(PC6) i 29(PC7) napięcie z zasilacza 9.6V (układ w tym momencie działał na napięciu 5V). Piny te nie były oprogramowane. Po tym zdarzeniu układ przestał generować impulsy PWM, nie można również odczytać jego pamięci flash. Natomiast można zapisać do pamięci flash nowy program, wszystkie piny działają, czyli da się je ustawić jako wejściowe, lub wyjściowe i ustawić na nich stan niski oraz wysoki.

    Ma ktoś jakiś pomysł co mogła spowodować opisaną przeze mnie usterkę???
    Uprzejmie proszę o pomoc.
  • REKLAMA
  • #2 7614369
    mklos1
    Poziom 25  
    Posty: 717
    Pomógł: 68
    Ocena: 121
    Każdy pin I/O posiada diody zabezpieczające od strony masy i zasilania. Gdy podałeś napięcie Vpin > Vcc włącza się dioda zabezpieczająca. Stabilizator nie był w stanie pochłonąć tego prądu, który popłynął przez diodę, wzrosło napięcie na zasilaniu procka i jak widać proc uległ uszkodzeniu.

    http://www.atmel.com/atmel/acrobat/doc2466.pdf (strona 50, schemat pinu wejściowego)

    Producent podaje Absolute Maximum Rating, co nie oznacza, że jeżeli się je przekroczy, to układ ulegnie natychmiastowemu uszkodzeniu i to w taki sposób, że będzie totalnie martwy. Masz szansę właśnie to obserwować.
  • REKLAMA
  • #3 7614374
    marco47
    Poziom 41  
    Posty: 3761
    Pomógł: 1139
    Ocena: 267
    Masz możliwość skasowania układu programatorem równoległym wysokonapięciowym (HV) . Jeżeli napięcia podłączyłeś na chwilę to powinno zadziałać zabezpieczenie wejść (układ diod ) więc teoretycznie nie powinieneś uszkodzić procka , mogły natomiast zmienić się bity konfiguracyjne i bity zabezpieczające .
  • #4 7614432
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    marco47 napisał:
    mogły natomiast zmienić się bity konfiguracyjne i bity zabezpieczające .

    Nie wiem skąd masz te informacje, ale wydają się być raczej nieprawdziwe.
  • #5 7614529
    Balu
    Poziom 38  
    Posty: 4397
    Pomógł: 323
    Ocena: 48
    @_Robak_ to jest jedna z metod bruteForce w łamaniu procków... Używanie wysokonapięciowych glitchy w celu złamania bitów... Więc może tak się ewentualnie stać.

    Dodano po 1 [minuty]:

    A najpewniej poszły się dymać diody na porcie;)
  • REKLAMA
  • #6 7614577
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    Ze tak sie przestawia PC to slyszalem ale zeby az fusy zmienic to nie ;) No nic, zwracam honor w takim razie :)
  • REKLAMA
  • #8 7614641
    _Robak_
    Poziom 33  
    Posty: 2209
    Pomógł: 231
    Ocena: 29
    No raczej to pierwsze ;)
  • #9 7614834
    tmf
    VIP Zasłużony dla elektroda
    Posty: 14318
    Pomógł: 2090
    Ocena: 2203
    Balu napisał:
    @_Robak_ to jest jedna z metod bruteForce w łamaniu procków... Używanie wysokonapięciowych glitchy w celu złamania bitów... Więc może tak się ewentualnie stać.

    Dodano po 1 [minuty]:

    A najpewniej poszły się dymać diody na porcie;)


    Tylko te glitche trwaja ns, a tu napiecie bylo podlaczone przez dluzszy czas. Zapewne najpierw usmazyla sie dioda zabezpieczajaca IO - to trwalo mikros, nastepnie wzroslo napiecie do 9,6V i przez pin IO poszlo na reszte procesora - zaczely przewodzic didody pomiedzy pinem na Vcc. Czesc struktury mogla sie zjarac. To, ze mozesz zapisac FLASH nic nie znaczy - procedura zapisu jest nieweryfikowalna, wiec programator nie moze ci na tym etapie wywalic bledow. Zweryfikowac mozesz zapis tylko odczytujac FLASH i porownujac z oryginalem. Takze obstawialbym, ze i zapis i odczyt szlag trafil. Proc do wyrzucenia.
  • #10 7614928
    Balu
    Poziom 38  
    Posty: 4397
    Pomógł: 323
    Ocena: 48
    No a to, że do wyrzucenia to swoją drogą:)
    A co do ns, to oczywiste, w końcu glitche;)
    Ale kolega niemówił skąd to napięcie i jak się dostało:)
    Anyway, żeby się nie denerwować z procka robisz pająka mutanta (40 nog;P)
    I na półeczkę:)
  • #11 7666162
    Datrixx
    Poziom 11  
    Posty: 7
    Do mikroprocesora podłączony był sterownik dla silników DC, układ L298. Od układu były wyprowadzone dwa przewody, do których podłączałem napięcie dla silników. Identyczne dwa przewody były chwilowo podłączone do wyżej wymienionych pinów mikroporcka, a poza nimi jeszcze kilka podobnych przewodów. Była późna godzina nad ranem i przez zwykłą pomyłkę, zamiast podłączyć napięcie do przewodów podłączonych do L298, podłączyłem do pinów ATmegi.

    Ku mojemu lekkiemu zdziwieniu procek nie jest do wyrzucenia. Kanały PWM poszły z dymem, widzę, że UART nie działa, pamięci flash nie można w żaden sposób odczytać, ale działa interfejs SPI i sterowanie pinami, więc zamierzam go wykorzystać jako sterownik do wyświetlacza 7-segmentowego. Sprawdzę jeszcze przetwornik ADC, jeśli zadziała, to może sie przydać...

    Panowie wielkie dzięki za wszelkie wyjaśnienia.

Podsumowanie tematu

✨ Użytkownik zaprogramował mikroprocesor ATmega16 do generowania sygnału PWM, jednak po przypadkowym podłączeniu napięcia 9.6V do pinów PC6 i PC7, które były nieużywane, układ przestał działać poprawnie. W odpowiedziach wskazano, że podanie napięcia wyższego niż Vcc mogło spowodować uszkodzenie diod zabezpieczających, co doprowadziło do wzrostu napięcia na procesorze i potencjalnego uszkodzenia jego struktury. Użytkownik zauważył, że chociaż nie można odczytać pamięci flash, inne funkcje, takie jak interfejs SPI, działają. Użytkownik planuje wykorzystać uszkodzony procesor do sterowania wyświetlaczem 7-segmentowym.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA