Skocz do zawartości

Ubiłem Atmegę? Błąd z "expected signature for ATmega328P is 1E 95 0F" oraz niedziałający reset


Sheppard25

Pomocna odpowiedź

Cześć.

Dziś wziąłem swój zmontowany układzik do programowania Atmegi328p i spróbowałem ją zaprogramować po raz pierwszy przez PlatformIO. Niestety zacząłem dostawać dziwne błędy typu:

avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e952a
avrdude error: expected signature for ATmega328P is 1E 95 0F
        double check chip or use -F to override this check

avrdude done.  Thank you.

i za każdym razem ten device signature było innym hexem. Potem co raz częściej pojawiał się błąd na dowolnej komendzie avrdude

avrdude error: program enable: target does not answer (0x01)
avrdude error: initialization failed, rc=-1

który chyba sugeruje totalny brak komunikacji. Zmontowałem jeszcze układ do programowania na płytce prototypowej i generalnie zachowanie było to samo. Teraz już dostaję tylko ten drugi błąd z brakiem połączenia.

Pomyślałem, że spróbuję zresetować kontroler i zwarłem reset do masy przyciskiem niemniej w stanie "normalnym" nie mam w ogóle napięcia na tym rezystorze podciągającym tak jakby pin reset był uszkodzony/nie przywodził. 

Czyżby ubite? ;] 

Pozdrawiam

Link do komentarza
Share on other sites

(edytowany)
1 godzinę temu, Sheppard25 napisał:

Pomyślałem, że spróbuję zresetować kontroler i zwarłem reset do masy przyciskiem niemniej w stanie "normalnym" nie mam w ogóle napięcia na tym rezystorze podciągającym tak jakby pin reset był uszkodzony/nie przywodził. 

Reset ma być podciągnięty przez rezystor do zasilania, przycisk resetujący powinien być między pin a rezystor i zwierać do masy.

Pokaż schemat zasilania i jego filtrowania, bo wydaje mi się że coś o tym zapomniałeś.
 

1 godzinę temu, Sheppard25 napisał:

i za każdym razem ten device signature było innym hexem.

Typowe dla braku filtrowania, efekt palucha i tym podobne.

Edytowano przez KatzePL
Link do komentarza
Share on other sites

15 minut temu, KatzePL napisał:

Reset ma być podciągnięty przez rezystor do zasilania, przycisk resetujący powinien być między pin a rezystor i zwierać do masy.

Pokaż schemat zasilania i jego filtrowania, bo wydaje mi się że coś o tym zapomniałeś.
 

Typowe dla braku filtrowania, efekt palucha i tym podobne.

Mam filtrujace 100nf obok VCC z obu stron. Natomiast przycisk resetu mam tak jak na schemacie (dodatkowo mam oscylator).

unnamed (1).jpg

Bez tytułu.png

Link do komentarza
Share on other sites

12 minut temu, Sheppard25 napisał:

Bez tytułu.png

Jeszcze filtrowanie zasilania pinu Reset.
Jeżeli uC jest nowy i nie ustawiałeś fusebitów, to odłącz oscylator i sprawdź działanie (powinien pracować na wewnętrznym oscylatorze).
Jeżeli układ jest zasilany z tego USBasp, to sprawdź napięcie z wyjścia zasilania programatora.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

3 minuty temu, KatzePL napisał:

Jeszcze filtrowanie zasilania pinu Reset.
Jeżeli uC jest nowy i nie ustawiałeś fusebitów, to odłącz oscylator i sprawdź działanie (powinien pracować na wewnętrznym oscylatorze).
Jeżeli układ jest zasilany z tego USBasp, to sprawdź napięcie z wyjścia zasilania programatora.

Pin reset nie ma w ogole napiecia, tu tez jest problem, tak jakby sie spalil. Powinno tam byc 5V. Oscylator odlaczalem, niestety to nie pomoglo. Czy fuesbity przypadkiem nie powinienem moc ustawic zawsze, tzn nie da sie tak ich popsuc zeby w ogole nie mozna bylo sie polaczyc z mikrokontrolerem przez averdude? 

Link do komentarza
Share on other sites

1 minutę temu, Sheppard25 napisał:

Czy fuesbity przypadkiem nie powinienem moc ustawic zawsze

Oczywiście że możesz, ale nie musisz. Źle ustawione fusebity mogą uwalić tylko w sposób programowy, czasami można "na szybko" naprawić poprzez wpięcie oscylatora zgodnego z nastawą, ale przy całkowitym braku dostępu (np. wyłączone programowanie SPI) tylko przez HVSP/HVPP.

W twoim przypadku jednak nie o fusebity chodzi, bardziej o samą komunikację i zakłócenia.
 

22 minuty temu, Sheppard25 napisał:

Pin reset nie ma w ogole napiecia, tu tez jest problem, tak jakby sie spalil. Powinno tam byc 5V.

Powinieneś mu podać te napięcie, a nie oczekiwać że się tam pojawi. A jeżeli podpinasz programator, to sprawdź czy on nie ciągnie do masy.

Link do komentarza
Share on other sites

24 minuty temu, KatzePL napisał:

Oczywiście że możesz, ale nie musisz. Źle ustawione fusebity mogą uwalić tylko w sposób programowy, czasami można "na szybko" naprawić poprzez wpięcie oscylatora zgodnego z nastawą, ale przy całkowitym braku dostępu (np. wyłączone programowanie SPI) tylko przez HVSP/HVPP.

W twoim przypadku jednak nie o fusebity chodzi, bardziej o samą komunikację i zakłócenia.
 

Powinieneś mu podać te napięcie, a nie oczekiwać że się tam pojawi. A jeżeli podpinasz programator, to sprawdź czy on nie ciągnie do masy.

Napięcie jest poprowadzone zgodnie ze schematem, jak wcisne przycisk to pojawia sie na rezystorze miedzy VCC a GND. W momencie gdy przycisk nie jest wcisniety napiecie jak rozumiem rowniez powinno na nim byc tylko prad zamiast do masy powinien "leciec" do RESETu ale to sie nie dzieje. Niestety nie wiem jak sprawdzic czy "nie ciagnie do masy" :(. A czy nawet gdyby RESET nie dzialal to przypadkiem nie powinien leciec raczej inny blad? Bo ten sugeruje ze w ogole nie ma polaczenia z mikrokontrolerem (?).

Link do komentarza
Share on other sites

(edytowany)
20 minut temu, Sheppard25 napisał:

Niestety nie wiem jak sprawdzic czy "nie ciagnie do masy" 😞

Przerwij połączenie z pinem RST USBasp. Nie wiem, nawet tylko zaizoluj pin we wtyczce.

Edytowano przez KatzePL
Link do komentarza
Share on other sites

Gość
14 minut temu, Sheppard25 napisał:

A czy nawet gdyby RESET nie dzialal to przypadkiem nie powinien leciec raczej inny blad? Bo ten sugeruje ze w ogole nie ma polaczenia z mikrokontrolerem

Aby us działał reset musisz mieć podciągnięty do V+ (zasilania us) W podstawowej konfiguracji robi to wewnętrzny rezystor podciągający, natomiast jeżeli w linię masz wpięte jakieś przyciski układy nadzoru itp. to warto zastosować dodatkowy, zewnętrzny rezystor podciągający do V+ o wartości 10-100k.

 

1 godzinę temu, KatzePL napisał:

Jeszcze filtrowanie zasilania pinu Reset.

jak masz zrobione to filtrowanie? Bezpośrednio pomiędzy pinem reset a GND? Do normalnej pracy nie mam nic przeciwko, ale w czasie programowania bym się zastanowił czy ten kondensator nie wprowadza jakiś opóźnień.

Link do komentarza
Share on other sites

6 minut temu, rafal220 napisał:

Aby us działał reset musisz mieć podciągnięty do V+ (zasilania us)

Tak jak pisałem, jest podciągnięty zgodnie ze schematem. To działało wcześniej a gdyby to był problem z filtrami to zapewne pojawiłby się wcześniej. To stopniowo przestawało działać, najpierw ten pierwszy błąd a potem co raz częściej ten drugi aż w końcu już tylko on. 

Z ciekawostek, jak odegnę wajchę o odpowiedni kąt to na diodę trafia zasilanie, nie wiem z jakiej paki, na mikrokontrolerze nie powinno być takiego programu. 😛 

Link do komentarza
Share on other sites

Gość
3 minuty temu, Sheppard25 napisał:

Z ciekawostek, jak odegnę wajchę o odpowiedni kąt to na diodę trafia zasilanie

A masz zaufanie do tych podstawek? , bo ja osobiście nie mam żadnego... Wolę konwencjonalne wciskane podstawki. Na tych z dźwignią niejednokrotnie się przejechałem. xD

Link do komentarza
Share on other sites

11 minut temu, rafal220 napisał:

A masz zaufanie do tych podstawek? , bo ja osobiście nie mam żadnego... Wolę konwencjonalne wciskane podstawki. Na tych z dźwignią niejednokrotnie się przejechałem. xD

Nie mam również dlatego zmontowalem uklad na prototypowej, najpierw bez oscylatora potem z oscylatorem, podpialem woltomierz (pominalem tylko reset z programatora bo chyba do sprawdzenia polaczenia nie jest konieczne). Woltomierz pokazuje 0 mimo ze na wyjsciach pomiedzy VCC i GND mam 5V. 

IMG_4052.jpg

Link do komentarza
Share on other sites

Gość
1 minutę temu, Sheppard25 napisał:

Woltomierz pokazuje 0 mimo ze na wyjsciach pomiedzy VCC i GND mam 5V. 

Ale masz 0V w takim układzie z krokodylkami jak na fotce? Niby tak można, ale tego nie praktykuj. Sondę czerwoną zapnij na nogę rezystora od strony reset, a czarną do GND

Link do komentarza
Share on other sites

2 minuty temu, rafal220 napisał:

Ale masz 0V w takim układzie z krokodylkami jak na fotce? Niby tak można, ale tego nie praktykuj. Sondę czerwoną zapnij na nogę rezystora od strony reset, a czarną do GND

No w porzadku, myslalem ze to bez znaczenia i tylko napiecie bedzie ze znakiem minus wiec nigdy nie przejmowalem sie tym.

Tak, w tym ukladzie mam 0V niezaleznie jak podlacze krokodylki

Link do komentarza
Share on other sites

Gość
1 minutę temu, Sheppard25 napisał:

Tak, w tym ukladzie mam 0V niezaleznie jak podlacze krokodylki

 Przez rezystor płynie tak mały prąd, że możesz nie zauważyć spadku napięcia na rezystorze w zakresie "V" z tond te 0V. Zmierz pomiędzy RST a GND.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.