Elektroda.pl
Elektroda.pl
X
PCBwayPCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmega8 - Jak odblokowac mikrokontroler?

13 Paź 2012 12:48 6858 12
  • Poziom 22  
    Witam wszystkich
    Przy próbach zaprogramowania Atmegi8 na zewnętrzny kwarc 16Mhz niestety zablokowałem sobie 3 Atmegi8
    Jak w prosty sposób odblokować procesorki?
    Jeśli ktoś ma pomysł bardzo proszę pisać
  • PCBwayPCBway

  • Poziom 28  
    Kolego po kolei:
    - jakiego programatora używasz?
    - jaki soft do programatora?
    - czy procesory były fabrycznie nowe?
    - czy wcześniej mogłeś dokładnie te procesory programować swoim programatorem?
    - jaki komunikat wyrzuca soft programatora?
    - czy masz pewność, że programator poprawnie komunikuje się z procesorami?

    Fabrycznie nowa atmega jest na wewnętrznym taktowaniu 1 MHz. Dla przykładu z programatorem USBAsp (bez założonej zworki slowsck lub bez ustawionego przełącznika -B150 w opcjach avrdude) otrzymasz już na dzień dobry komunikat "target doesn't answer".
    Najczęstszym błędem jest przestawienie fusów procesora na taktowanie zewnętrznym kwarcem i nie podłączenie kwarcu... Najpierw podepnij jakikolwiek generator prostokąta dający min. 1MHz i zobacz czy dasz rade się skomunikoać (programator musi pracować w trybie zwolnienia komunikacji!!! slow sck lub przełącznik -B...). Innym błędem jest deaktywacja pinu reset atmegi - wtedy tylko programator równoległy typu AVRDragon lub kosz...
  • PCBwayPCBway
  • Poziom 17  
    Nie wiem, czy prosty, ale dość wygodny i szybki jeżeli często będzie Ci się zdarzać mikrokontrolery to na elektrodzie jest projekt Fusebit Doctor'a (pozwolę sobie wrzucić link https://www.elektroda.pl/rtvforum/topic1716521.html ). Działa świetnie. Jedynym problemem dla Ciebie może być fakt, że trzeba będzie zaprogramować atmegę do tego urządzenia ( pomijam fakt wykonania pcb, w linku jest gotowy projekt płytki oraz wsady do procesora )
  • Poziom 22  
    Fabrycznie nowa atmega z programatorem USBAsp zablokowałem sobie je w Bascom
    tak jak mowie chciałem przestawić fusy na 16Mhz zewnętrzny kwarc projekt jaki chciałem zrobić to analizator widma akustycznego V2 znaleziony na elektrodzie
    no właśnie przez ten program padły mi 3 Atmegi8
    Czytałem coś o generatorze prostokątnym ale za bardzo nie znalazłem żadnego schematu oraz projektu jak odblokować procesorek AVR
    Co do fuse doktora to już wpadł mi w oko ten projekt no powiem szczerze ze nie chce mi się wytrawiać płytki do trzech procesorkow wolał bym raczej coś na szybko na płytce stykowej zrobić

  • Poziom 28  
    kulamario napisał:
    no właśnie przez ten program padły mi 3 Atmegi8
    To jaki program wgrywasz do procka nie ma nic wspólnego z tym co namieszałeś w fusach.
    Podaj więcej informacji o tym jak doprowadziłeś do ich blokady.

    Ja, pomimo że już atmeg dzieeeeesiątki zaprogramowałem, ZAWSZE najpierw odczytuję wartość fusów, potem ją edytuję i zapisuję z powrotem (chyba, że np. w eclipse ustawię sobie żeby każdorazowo z programem zapisyawł mi także właściwe fusy dla tego programu). Rózne programy różnie interpretują bałagan wprowadzony przez atmela z logiką odwróconą podczas ustawiania fusów. Jedne program pokazuje bit zaprogramowany jako jedynkę, inny jako zero. Stąd przez ten bajzel bardzo często dochodzi do pomyłek u początkujących.

    Posiadasz jakąkolwiek sprawną atmegę w tej chwili? Jeżeli tak to:
    - nie zmieniaj w niej fusow
    - napisz w bascomie krótki program, który w pętli nieskończonej cały czas zmienia stan portu na przeciwny -samemu robisz sobie właśnie generator
    - podłącz pin tej atmegi (ten generujący przebieg) do wejścia xtal1 tej ubitej i spróbuj ją ożywić.

    Oczywiście w usbasp musisz załozyć zworkę slowsck lub jeszcze lepiej w opcjach konfiguracji programatora (nie wiem gdzie to siedzi w bascom) dopisać -Bxxx gdzie xxx to dowolna wartość większa od 150.
  • Poziom 22  
    Tak jak pisałem wcześniej próbowałem ustawić 16Mhz zewnętrzny kwarc wszystko robiłem w bascomie
    tak mam sprawna jeszcze jedna atmege8
    Nie rozumiem tak do końca jak mam to zrobić?
    Jak podłączyć mam to wszystko?
    Czy padniętą atmege wsadzić w programator i do niej podłączyć atmege z programem do pinu xtal1? i próbować odczytać?czy dobrze rozumiem?
    Aha jedno z ustawień było takie
    Atmega8 - Jak odblokowac mikrokontroler?

  • Poziom 28  
    Ponieważ napisałeś do mnie na PW to odpowiadam:
    - bardzo dobrym programem (niestety płatnym) jest mkavrcalculator, jednak w Twoim przypadku (atmega8) możesz go użyć - wersja demo obsługje w całości ten procesor
    - chwalę sobie AVRBurn-O-Mat - nakładka graficzna na avrdude
    - KhazamaAVRProgrammer
    Tylko nie rozumiem zbytnio po co chcesz ich używać skoro masz usbasp zintegrowane z bascomem :)

    Zrób tak:
    - podłącz programator do sprawnej atmegi
    - ODCZYTAJ fusebity
    - zapisz je do pliku (nie wiem czy bascom to wspiera), ew. zapisz sobie gdzieś odczytane wartości
    - napisz ten program o którym Ci wcześniej pisałem - tu nie pomogę bo nie znam bascoma
    - wgraj ten program do tego procesora
    - odłącz procesor od programatora
    - podłącz niesprawną atmegę
    - do pinu xtal1 tej niesprawnej podłącz pin (z tej sprawnej) na którym generujesz przebieg
    - spróbuj wgrać do niej fusebity odczytane ze sprawnej atmegi (te które kazałem zapisać do pliku)

    Jeżeli to się uda, to w ten sposób przywróc do życia pozostałe procki i dopiero wtedy baw sie we właściwe zmiany fusów na 16MHz.
    Jeżeli wszystko zrobiszz poprawnie (ważne jest, żeby ten generator działał) to ten sposób MUSI działać. Jeżeli mimo wszystko nie działa (pod warunkiem że na 100% wszystko dobrze zrobiłeś) to znaczy, że deaktywowałeś pin RESET w atmegach. I wtedy masz problem bo zwykłym programatorrem szeregowym typu usbasp tego nie zrobisz.

    [EDIT]
    Wgraj do tej sprawnej atmegi plik hex z załącznika. Nie zmieniaj niczego w jej fusach. Na pinie PORTD 7 masz sygnał prostokątny.
  • Poziom 22  
    "Tylko nie rozumiem zbytnio po co chcesz ich używać skoro masz usbasp zintegrowane z bascomem "
    Niestety nie da się wgrać hex lub bin z bascoma
    trzeba mieć program aby wgrać coś do procka
    w bascomie mogę sobie napisać program potem go z kompilować i nagrać już z kompilowany
    Sprawdzę ten sposób na odblokowanie Atmegi i dam znać co i jak
  • Poziom 39  
    kulamario napisał:
    Niestety nie da się wgrać hex lub bin z bascoma

    Kolego chyba za bardzo nie umiesz się posługiwać Bascomem F4 okno programatora , Buffer > Load From File > wybierasz dowolny plik z rozszerzeniem bin lub hex . Może to być zrobione na dowolnym projekcie lub stworzyć sobie pusty projekt .
  • Poziom 22  
    Sprawdzałem niestety nie mogę odblokować żadnej z trzech atmeg
    po zaprogramowaniu i podłączeniu diody do PD7 dioda świeci cały czas nie wiem czy tak ma być?czy tak wygląda przebieg prostokątny?
    czy może tak szybko to trwa ze moje oko tego nie widzi?
    nie wiem co jest nie tak
    fusy mam ustawione na 1Mhz w atmedze z programem

    Dodano po 8 [minuty]:

    bogdan_p napisał:
    kulamario napisał:
    Niestety nie da się wgrać hex lub bin z bascoma

    Kolego chyba za bardzo nie umiesz się posługiwać Bascomem F4 okno programatora , Buffer > Load From File > wybierasz dowolny plik z rozszerzeniem bin lub hex . Może to być zrobione na dowolnym projekcie lub stworzyć sobie pusty projekt .

    Witam
    No miałeś racje z tym ze da się wgrać bin i hex w bascomie nie wiedziałem
    dziękuje bardzo za informacje

  • Poziom 28  
    To co sprawdziłeś diodą to jedynie informacja o tym, że coś dzieje się na porcie PD7. Taktujesz mikrokontroler wewnętrznym 1MHz. W pętli nieskończonej program nie robi nic poza tym, że co obieg pętli zmienia stan pinu pd7 na przeciwny. W przybliżeniu ten przebieg ma 0,5MHz.

    Czy po podłaczeniu teo generatora użyłeś w programatorze zworki slowSCK? Ew. czy w opcjach programatora jako dodatkową komendę dopisałeś "-B150"?
    Jeżeli zrobiłeś to poprawnie i nie ma jeszcze jakichś innych niespodzianek w Twoim układzie to niestety zablokowałeś pin reset w tych martwych atmegach.
  • Poziom 22  
    Witam wszystkich
    Najlepszym rozwiązaniem okazał się generator z noty katalogowej Atmega8
    Podaje przykład
    Atmega8 - Jak odblokowac mikrokontroler?
    Temat do zamknięcia
    Dziękuje wszystkim za udział w rozmowie
    ps
    Wszystkie trzy Atmega8 odblokowane