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

Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP

Narren 28 Mar 2012 17:57 14279 33
  • #1 10729748
    Narren
    Poziom 9  
    Witam wszystkich,
    postanowiłem zacząć naukę programowania mikrokontrolerów. Zgodnie z radami kupiłem płytkę stykową, trochę drobnicy, mikrokontroler ATmega8A-PU oraz programator usbasp:
    http://allegro.pl/programator-usbasp-avr-atmel-isp-tasma-win7x64-pl-i2171732713.html
    Złożyłem układ zgodnie ze schematem:
    http://www.kursc.forbot.pl/img/art001_schemat1.png z tą różnicą, że nie ma teraz diod (cała reszta zostaje tak jak na schemacie). Programator zainstalowałem zgodnie z instrukcją (zainstalowany sterownik to libusb_1.2.4.0 - w menedżerze urządzeń mam w kategorii "LibUSB-Win32 Devices" urządzenie "usbasp"). Mam Windowsa XP. Zworki ustawione zgodnie z instrukcją, zasilanie układu z portu USB (sprawdziłem, jest 5V w układzie).
    Uruchomiłem mkAVR Calculator, w ustawieniach zainstalowałem AVRDUDE, potem w zakładce "Programator AVR" wybrałem ATmega8, programator usbasp, port usb, autosck speed. Jest też zaznaczony w polu "szybki wybór programatora" mój programator usbasp. Po kliknięciu w "Sprawdź podłączony AVR" wyskakuje mi błąd AVRDUDE (zapala się na moment czerwona dioda w programatorze i koniec).
    Tak samo błąd miałem w WinAVR przy próbie wysłania programu (tutaj błąd mówił o tym, że AVR nie odpowiada).
    Nie mam pomysłu co może być źle.
    Starałem się opisać wszystko jak najdokładniej, przez co może wyszedł trochę przydługi post. Z góry dziękuję za pomoc!
  • #2 10729885
    mirekk36
    Poziom 42  
    Czy zainstalowałeś sobie AVRDUDE z zakładki "Ustawienia" w programie MkAVRCalculator ???? bo to może być ważne ;) Jeśli nie to zrób to i wtedy kliknij klawisz "Sprawdź podłączony AVR".
  • #3 10729905
    Narren
    Poziom 9  
    Tak, avrdude zainstalowałem z zakładki "Ustawienia". Dla pewności usunąłem poprzednią instalację i zainstalowałem ponownie bezpośrednio na dysku C.
  • Pomocny post
    #6 10730947
    mirekk36
    Poziom 42  
    No to masz błąd połączenia pomiędzy programatorem a procesorem - NIESTETY :( nie ma innego wyjścia.

    Schemat pokazałeś OK ale pewnie fizycznie już jest gdzieś problem - tzn na pewno jest bo o tym świadczy ten komunikat. Pokaż jakąś fotkę jak zmajstrowałeś ten swój układ - jakieś 2-3 zdjęcia z bliska w miarę.

    Tylko proszę - weź że zdjęcia dodawaj przez elektrodę a nie przez jakieś tam kocie serwery gdzie ładuje się pełno SPAMU :(

    Masz przecież klawisz "dodaj obrazek" - czy tak ciężko z niego skorzystać ?

    No a dzięki temu obrazki będą od razu widoczne w poście.
  • #7 10733366
    Kiui
    Poziom 10  
    Hej.
    mam podobny problem jak kolega.
    to mój układ
    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP
    Komunikat Programu.
    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP
    podłączony mikroprocesor
    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP
    Układ stabilizujący napięcie
    Ten mój układ jest dokładną kopią tego z tej strony.
    http://mikrokontrolery.blogspot.com/2011/03/atmega8-pierwszy-program.html
    Nie widząc co się dzieje z układem wymieniłem nawet mikroprocesor na nowy.
    Morze być to wina niezaładowanego Bootloadera??
  • #8 10733399
    mirekk36
    Poziom 42  
    A co ma z tym wspólnego bootloader? Pomyliły ci się może jakieś pojęcia.

    Komunikat ten sam: rc=-1

    Masz błędne połączenia pomiędzy mikrokontrolerem a programatorem a niestety z tych zdjęć nic nie widać

    sprawdź dokładnie MOSI, MISO, SCK i RST - bo pewnie tu gdzieś robisz błąd

    o ile zasilanie jest prawidłowe na procku
  • #9 10733537
    Kiui
    Poziom 10  
    Dzięki rzeczywiście jeden kabel był pęknięty. wszystko już jest ok
  • #10 10751748
    Narren
    Poziom 9  
    Witam,
    przepraszam, że tyle czasu nie odpowiadałem.
    Co do wrzuconego przeze mnie zdjęcia nie byłem przyzwyczajony do tego, że forum umożliwia nowym użytkownikom wrzucanie zdjęć przez samo forum.
    Wydaje mi się, że problem został naprawiony. mkAVR Calc. odczytał mój uC jako atmega88p (jednocześnie informując, że wersja darmowa nie pozwala na jego programowanie). Z tego co wiem, mogę spokojnie go programować jako zwykłą atmegę8. Nie mylę się?
    Problemem okazała się płytka stykowa, która najwyraźniej ma uszkodzony jeden z rzędów - omomierzem sprawdzałem kolejne połączenia i w ten sposób udało mi się trafić. Po bezpośrednim połączeniu kabla do nóżki mkAVR załapał.
    Mam jednak jeszcze pytanie. Przy próbie przesłania programu wyskakuje błąd:
    avrdude: Device signature = 0x1e930f
    avrdude: Expected signature for ATMEGA8 is 1E 93 07
    Double check chip, or use -F to override this check.
    Zadeklarowanym przeze mnie uC jest atmega8.
  • #11 10751769
    mirekk36
    Poziom 42  
    Narren napisał:
    Z tego co wiem, mogę spokojnie go programować jako zwykłą atmegę8. Nie mylę się?


    Absolutnie się mylisz - to CAŁKIEM INNE rodzaje mikrokontrolerów - nie próbuj tego nawet robić.


    Narren napisał:
    Problemem okazała się płytka stykowa, która najwyraźniej ma uszkodzony jeden z rzędów - omomierzem sprawdzałem kolejne połączenia i w ten sposób udało mi się trafić. Po bezpośrednim połączeniu kabla do nóżki mkAVR załapał.


    No i taka to jest zabawa z płytkami stykowymi i mikrokontrolerami właśnie :( .... nie pierwszy i nie ostatni to twój przypadek gdy stracisz wiele godzin na szukaniu przyczyny jakiejś usterki żeby na końcu się okazało że to przez błąd związany z korzystaniem z płytki stykowej. Dlatego rozważ sobie albo zrobienie jakiejś własnej gotowej płytki PCB takiej z mikrokontrolerem i podtstawowymi peryferiami do testów albo zakupienie jakiegoś nawet najtańszego zestawu uruchomieniowego może? .... to tylko oczywiście taka propozycja.
  • #12 10751796
    Narren
    Poziom 9  
    W ostatniej chwili dodałem jeszcze kilka linijek do mojego posta (a dodałem w dość niefortunnym momencie, kiedy odpowiadałeś mi). mkAVR Calc w wersji darmowej nie pozwoli więc na zaprogramowanie tego uC? A co w takim razie powinienem wpisać w makefile do programu Programmer's Notepad - przy deklarowaniu atmega88p program krzyczy, że nie zna czegoś takiego.
  • #14 10751840
    Narren
    Poziom 9  
    Ale ja, jak już pisałem wyżej, zainstalowałem wersję z mkAVR Calc. Co mam więc zrobić, żebym mógł przesłać program do mojego mikrokontrolera?
  • #15 10751852
    mirekk36
    Poziom 42  
    No to jak zainstalowałeś wersję z MkAvrCalc'a i nie działa to nie wiem co masz teraz zrobić żeby ci dobrze działało w Programmers Notepad ? :( ..... Ja nie używam takich archaicznych wynalazków jak PN, dlaczego ty się z tym męczysz i nie weźmiesz jakiegoś ECLIPSE albo chociaż CodeBlocks ????? Tylko sam męczysz się z tworzeniem makefile. Toż sam się prosisz o problemy - to takie przyjemne utrudniać sobie życie ? ;)

    poczytaj sobie tutaj:

    http://mirekk36.blogspot.com/2011/11/dlaczego-eclipse-zamiast-avr-studio.html

    Gdybyś programował w jakimś normalnym środowisku programistycznym to byś zapomniał o takich problemach a avrdude zainstalowane z MkAvrCalc na pewno by ci działało. Zresztą sam program też w pełni dobrze działa z tym ale i z wieloma innymi prockami.
  • #16 10751871
    miodek
    Poziom 15  
    Zmiejsz zworkami w usbasp prędkość transmisji pomiędzy programatorem a atmegą.
  • #17 10752049
    Narren
    Poziom 9  
    Dzięki za odpowiedzi. Zworka jest ustawiona tak, by zwolnić prędkość. Chodzi mi bardziej o to:
    jak się dowiedziałem przed chwilą, atmega8a-pu nie da się zaprogramować przez zdefiniowanie w moim programie procesora jako atmega8. W avrcalculator nie da się wybrać innego uC. W programmer's notepad też się nie da wybrać atmega88p, ani atmega8a-pu.
    Zainteresuję się programem eclipse, ale miałem nadzieję, że proste przesłanie kodu do atmega8a-pu jest... proste. Zainstaluję eclipse i zobaczę czy wtedy się uda.
  • #18 10752146
    mirekk36
    Poziom 42  
    Posłuchaj bo coś sam chyba pokręciłeś ;) .... Procek ATmega8A możesz śmiało programować jako ATmega8 !!!!! żadnego problemu tu nie ma

    ale czy dla ciebie nie jest zrozumiałe i oczywiste, że ATmega88 to już całkiem inny procesor ?
  • #19 10752198
    Narren
    Poziom 9  
    Może ciężko w to uwierzyć, ale dla kogoś kto pierwszy raz w życiu ma uC w ręku nie jest to oczywiste. Zakupiony przeze mnie uC to atmega8a-pu. Kiedy wybieram w mkAVR Calc. opcję "Sprawdź podłączony AVR" to wyskakuje "[ATmega88p]" z sygnaturą 1E930F. Więc teraz mam kompletny mętlik w głowie.
  • Pomocny post
    #20 10752245
    mirekk36
    Poziom 42  
    A to ci checa ! - No przyznam że jeśli taka jest prawda, że masz kupiony ATmega8 a pokazuje ci ATmega88 to szok - i nie dziwię się że masz mętlik w głowie ale ......

    ale .... czy możesz potwierdzić na 100% że na obudowie mikrokontrolera jest też napisane ATmega8a czy może jednak Atmega88 ????? Bo wiesz - może i chciałeś kupić Atmega8 a sprzedawca dał ci ATmega88 ??? W sumie to prawie to samo ale koniecznie trzeba program źródłowy przekompilować z m8 na m88 żeby działał.

    Bo mi się coś wydaje że skoro MkAvrCalc wykrywa ci ATmega88 to tak jest w rzeczywistości i na obudowie też może masz napisane ATmega88 tylko to może przeoczyłeś ????
  • #21 10752290
    Narren
    Poziom 9  
    No cóż. Jak widać lepiej wiesz co chciałem kupić i lepiej wiesz co dostałem, bo oczywiście masz rację :). Chciałem kupić inny, dostałem inny (nie dojdę teraz do tego czy to ja się walnąłem przy zamówieniu, czy sklep). W takim razie przez darmowego MkAVRCalc nie da rady. W programmer's notepad mówi teraz, że oczekiwana sygnatura to 1E 93 0A a moja to 1E 93 0f.
    Zainstalowałem (właściwie przekopiowałem) eclipse classic, teraz idzie IDE. Jak się w nim rozpatrzę to pewnie jeszcze będę miał pytania :). Na razie dziękuję za poświęcony czas.

    Dodano po 1 [godziny] 40 [minuty]:

    Aktualizacja: w końcu wszystko zadziałało!
    Zainstalowałem eclipse, indigo, avr plugin - jednak dalej nie udawało mi się wgrać niczego na mój uC. Rozwiązanie znalazłem tutaj: Link
    Trzeba w pliku konfiguracyjnym avrdude podmienić sygnaturę atmegi88 tak, by była taka sama jak atmega88p.
    Pierwszy program wgrany, dziękuję bardzo za pomoc!

    PS I polecam Eclipse, jestem początkujący w temacie uC ale program bardzo intuicyjny (jak już się przebrnie przez instalację ;) ).
  • #22 10758569
    blue_17
    Poziom 32  
    Jak skonfigurować NB do pracy z avrdude to pewnie bardzo podobnie jak w Code::Blocks

    Teraz mogę tylko powiedzieć że AVRDUDE z aplikacji Pana Mirka może więcej :D

    tutaj jak skonfigurować USBasp z C::B

    http://www.blue17.elektroda.eu/usbasp/1045

    zauważ jaki procesor jest wpisany :)

    Jeśli nadal chciałbyś lekkie IDE do AVR to tu jest opis jak skonfigurować Code::Blocks

    http://www.blue17.elektroda.eu/mikrokontrolery-avr/774
  • #23 10835802
    maciek199815
    Poziom 12  
    (przepraszam za odkopywanie)
    Mam pytanie czy ten problem też da się rozwiązać?:
    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP
  • #24 10836153
    Kiui
    Poziom 10  
    Odłącz i podłącz programator oraz sprawdź podłączenie programatora pod procesor
  • #26 10839017
    maciek199815
    Poziom 12  
    Pod procesor czyli pod komputer?
  • #28 10841276
    maciek199815
    Poziom 12  
    Sprawdzicie czy dobrze podłączyłem?:
    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP

    Błąd AVRDUDE przy programowaniu ATmega8A-PU z usbasp na Windows XP
    Nie uwzględniłem tylko zasilania.
  • #30 10843800
    maciek199815
    Poziom 12  
    Da się to naprawić?
REKLAMA