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

co dolega tej atmedze? [m128]

Dr. Kuj 25 Maj 2011 21:40 1743 15
REKLAMA
  • #1 9544324
    Dr. Kuj
    Poziom 13  
    Mam atmegę128L która pracuje w pewnym układzie. Działa z kwarcem 8MHz. Do wczoraj dała się normalnie programować. Dzisiaj przestała. Program sie wykonuje poprawnie: działają uarty i miga lampeczkami z prawidłową częstotliwością (zakładam więc że z kwarcem wszystko w porzadku). Połączenia programatora na 100% poprawne. Avrdude nie może odczytać sygnatury. Programator sprawny bo sprawdzałem z inną atmegą w takim samym obwodzie. Zmieniałem także częstotliwość ISP w programatorze (od 400Hz do 57,6kHz). Bez efektu. Atmega jest prawie nowa (max 100 programowań flasha).

    Co mogło paść? Jak szukać przyczyny i jak ją naprawić?
  • REKLAMA
  • #2 9544457
    GSM
    Poziom 25  
    Witam,

    ruszałeś fusebity? mogłeś wyłączyć pin RESET, albo upaliłeś któryś z pinów SPI.
    Czy na pinach SPI są podłączone jakieś peryferia? One mogą stanowić problem w ustanowieniu połączenia.

    Pozdrawiam,
    GSM
  • #3 9544695
    Dr. Kuj
    Poziom 13  
    W fusach nie mieszałem. Reset działa napewno bo kiedy próbuje wgrać program AVTPROG (programator od AVT) ustawia reset. Program sie resetuje i wykonuje od początku.
    Na nogach SPI nie ma nic. Wogóle nie ma nic nigdzie bo wszystko jest odłączone (atmega we własnej podstawce). Podłączony jest tylko kwarc i rezystor na resecie (10k do Vcc standardowo).

    Przykład z avrduda:

    C:\>avrdude -p m128 -c stk500v2 -P COM5 -U lfuse:r:-:m

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.05s

    avrdude: Device signature = 0xffffff
    avrdude: Yikes! Invalid device signature.
    Double check connections and try again, or use -F to override
    this check.


    avrdude done. Thank you.


    Sygnatura nie do odczytu. Nie mam pojęcia dlaczego tymbardziej że jeszcze 12 godzin temu wszystko działało..
  • #4 9544706
    GSM
    Poziom 25  
    Witam,

    a spróbuj wgrać program na siłę - bez weryfikacji sygnatury i zobacz czy się zaprogramuje.

    Pozdrawiam,
    GSM
  • REKLAMA
  • #5 9544732
    Dr. Kuj
    Poziom 13  
    C:\>avrdude -p m128 -c stk500v2 -P COM5 -U lfuse:r:-:h -F

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.05s

    avrdude: Device signature = 0xffffff
    avrdude: Yikes! Invalid device signature.
    avrdude: Expected signature for ATMEGA128 is 1E 97 02
    avrdude: reading lfuse memory:

    Reading | ################################################## | 100% 0.02s

    avrdude: writing output file "<stdout>"
    0xaf

    avrdude: safemode: Fuses OK

    avrdude done. Thank you.

    Fusa odczytało. Mam nadzieje że poprawnie.. Zaraz sprawdze z programem..

    Dodano po 6 [minuty]:

    Ale jaja... poszło na siłe ;/

    Kiedyś miałem podobny problem z identycznym układem. Na siłe wgrało się ale bez efektu. Tyle że w jego przypadku podejrzewam że przekroczyłem limit ładowań flasha..

    Czy ktoś wie co mogło się stać mojej atmedze? dlaczego trzeba ją ładować na siłę (tj. z -F) ?
  • REKLAMA
  • #6 9544780
    kamyczek
    Poziom 38  
    Są takie dwa tematy : pierwszy oraz drugi i zanim zaczniesz generować kolejny temat z cyklu od wczoraj mi nie działa warto się zapoznać z zagadnieniami opisanymi w linkach.
  • #7 9544874
    Dr. Kuj
    Poziom 13  
    Widziałem te tematy... odpowiedzi w nich nie znalazłem.
  • REKLAMA
  • #8 9545611
    kamyczek
    Poziom 38  
    Limit programowań flash - bzdura "Write/erase cyles: 10,000 flash/100,000 EEPROM" opcje są trzy:
    - wyłączone programowanie SPI (fusebit SPIEN)
    - wyłączony reset
    - zbyt duża częstotliwość SPI programatora (ma być 1/4 Częstotliwości zegarowej).
    Co jest źle najłatwiej sprawdzić programatorem HVPP.
  • #9 9545822
    Dr. Kuj
    Poziom 13  
    Niestety nie mam takiego programatora..
    Czy możliwe jest żeby fusy przestawiły się same?(raz chyba mi się kiedyś jeden sam przestawił więc zakładam że to możliwe)
    Częstotliwość SPI zmieniałem. Czasem pomagało zejście do minimalnej i powolne narzucanie coraz większej. Procek sie przyzwyczajał i wszystko grało normalnie ;] Możliwe też że to było coś po stronie programatora..
  • #11 9545855
    rrytel
    Poziom 14  
    ja też kiedyś miałem problemy z programowaniem,problemami się okazało:
    - zbyt blisko działającej karty wifi (zakłócenia)
    - miałem urwany jeden kabelek (miałem na płytce uniwersalnej i jeden kabelek od złącza programowania ujrwał)
    życzę rozwiązania problemu.
  • #12 9546455
    Dr. Kuj
    Poziom 13  
    kable też sprawdzałem, wyginałem w każdą możliwą strone i ładowałem kod do innej atmegi. Przewody wykluczam.
    Zakłóceń raczej tutaj nie ma, a jeśli są to od zawsze takie same..
    Dziwi mnie to że kod załadował sie na siłe. Ale nie może tak być bo nie da sie pracować w ten sposób..
    Nie wiem gdzie szukać błędu :(
  • #13 9546917
    GSM
    Poziom 25  
    Dr. Kuj napisał:
    Dziwi mnie to że kod załadował sie na siłę.


    ciekawe, mi się raz tak zdarzyło, i też uważam, że w fusach nie grzebałem, mikrokontroler był programowany z użyciem pliku wsadowego do avr-dude, próby przywrócenia procka do ustawień fabrycznych z użyciem HV niczego nie zmieniły, dał się tylko zaprogramować na siłę, zero odczytu.
    Więc albo felerny egzemplarz z ukrytym uszkodzeniem albo pin się upalił od ładunków statycznych pomimo wewnętrznych zabezpieczeń :wink:
    Może błędy przy którejś transmisji przestawiły fusy? :roll:

    Pozdrawiam,
    GSM
  • #14 9547068
    Dr. Kuj
    Poziom 13  
    Nie bez powodu radzą dawać kondensator na każdej nodze uC i jeszcze diody przepięciowe do tego. Może coś w tym jest...
    Wątpie żeby ładunek statyczny załatwił uC, przecież wszystko inne działa bez zarzutu...
    Widze że nie da się odkryć przyczyny.
    Ciekawe ilu z nas takie coś się przytrafiło?..
  • #15 9547726
    manekinen
    Poziom 29  
    No dobra, załadowałeś z ominięciem odczytu sygnatury, ale czy wrzucony wsad działa? Jak weryfikacja?

    Jeśli OK, to po prostu padła Ci sygnaturka w układzie, choć w nocie nic o tym nie znajdziesz to czasem się to zdarza i jest nie do naprawienia - trzeba pracować z opcją -F :)

    Jeśli zapis nic nie dał, no cóż, linki podane przez kamyczek powinny pomóc.
  • #16 9549718
    Dr. Kuj
    Poziom 13  
    Wsad działa. Gdyby nie działał napisałbym o tym. Weryfikacja również przeszła pomyślnie.
REKLAMA