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

[AVR] niedziałający USBasp oraz STK500v2

csdominik 12 Sie 2010 14:46 2323 1
  • #1 8391025
    csdominik
    Poziom 11  
    =>INTRO :
    Witam serdecznie. Mam problem z programatorem AVR. Zwykle programowałem uC na uczelni lub tam gdzie odbywałem staż/praktyki. Jeśli miałem robić to w domu, to robiłem to na starym komputerze (gdzie miałem gniazdo LPT). Teraz kiedy komputer z gniazdem LPT oszalał. I mam do dyspozycji "tylko" nowy. Powstał problem, muszę mieć programator USB. Podjąłem się złożenia USBasp. Niestety nawet po konsultacjach z prowadzącymi na mojej uczelni, nie wiem dlaczego on nie działa. Stwierdziłem że kupię sobie gotowca.
    No i kupiłem STK500v2 USB , oraz USBasp.

    =>INFO (WAŻNE) :
    OS : windows 7 x86 (32bit),
    MOBO(płyta główna) : MSI Neo2-FIR
    Układ : płyta startowa/edukacyjna firmy ( o ile mogę to napisać ) propox z atmegą8, płyta jest testowana przed wysłaniem, tak że ścieżki są OK.
    Zasilanie : zasilanie mam z "zewnątrz" - zasilacz stabilizowany 15VDC 1000mA.
    uC: mam w domu kilka uC atmega8, atmega88, attiny2313, także możliwość zablokowanego uC też jest wyeliminowania. Nowe atmegi8 staram się programować z ograniczoną prędkością do 1Mhz.
    Środowisko : WinAVR, AVRStudio4
    Programy służące do programowania : AVRdude + burn-o-mat , khazama
    Sterowniki : do STK500v2 - drivers-vista, do USBasp - najnowsze ze strony autora.

    =>Tak szukałem już informacji na google i na elektrodzie. Jednak to sytuacja nietypowa.

    =>PROBLEM :
    1) STK500v2
    Podczas instalacji (niezbyt trudnej) postępowałem zgodnie z instrukcjami w manualu. Windows poprawnie znalazł programator - w menadżerze zadań widniał jako Virtual Communication Port (com3). Co ciekawe AVRStudio wykrywa poprawnie atmegę8 (poprawne "read signature"). Czyta fusy, no ale programować się nie da... już wyjaśniam. W środowisku AVRStudio (w WinAVR też) skompilowałem plik do hex, i kiedy próbuję wysłać program do uC, program zostaje poprawnie przesłany (po Verify też jest ok). Ale niestety... nie jest wykonywany. Nawet po przyciśnięciu RESET, czy power OFF. Po prosty nie wiem jak się w takiej sytuacji zachować. Niby "read signature" działa, niby program przesyła hexa, niby VERIFY jest ok, i mimo to porażka.
    Proszę o rady w tym szczególnym wypadku.


    2) USBasp
    UWAGA UPDATE: producent programatora, miał inaczej oznaczone zworki teraz sytuacja jest jak w punkcie 1! Czyli program zostaje poprawnie przesłany (+verify). Ale niestety... nie jest wykonywany.
    Instaluje poprawnie w systemie, w menadżerze zadań widzę urządzenie jako : LibUSB-Win32 Devices -> usbasp.
    Cytat:
    nieaktualne :
    USBasp - na allegro da się dostać tanio. Instaluje poprawnie w systemie, w menadżerze zadań widzę urządzenie jako : LibUSB-Win32 Devices -> usbasp. (chociaż jak to zainstalowałem (LibUSB-Win32) - to po restarcie żaden port USB nie działał... i w zasadzie gdyby nie to że mam gdzieś w szafie klawiaturę na PS2 to chyba bym musiał formata robić. A tak zrobiłem przywracanie systemu.
    Jeśli chodzi o programowanie - to NIESTETY w programie AVRdude (z nakładką burn-o-mat) wyskakuje mi błąd. Device signature = 0x000000
    Zdjęcie razem z ustawieniami:
    [AVR] niedziałający USBasp oraz STK500v2


    Z Khazama mam podobne przygody : (1Mhz na USBasp).
    Skrócony opis zworek, dla zainteresowanych , J1-zasilanie z programatora, J2-aktualizacja programu na programatorze, J3-ograniczenie prędkości.
    [AVR] niedziałający USBasp oraz STK500v2


    Naprawdę nie wiem co jest grane.
    Czy ktoś miał podobne problemy? Jak mogę je rozwiązać?
    A może to kwestia sterowników płyty głównej / usb?



    Z góry dziękuję za pomoc, pozdrawiam
    Dominik

    Proszę zmienić tytuł tematu na zgodny z regulaminem oraz prawidłowo dodać obrazki.
    [zumek]

    Dominik: zrobione.
  • #2 8411342
    csdominik
    Poziom 11  
    Podsumowując, problem wyglądał tak :
    Poprawnie skompilowany plik HEX wrzucałem na ATmegę8, przez Khazama, WinAVR, czy AVRdude. Weryfikacja pamieci flash dawała wynik pozytywny w każdym z tych programów (znaczy że HEX na dysku = HEX w pamięci uC). Mimo to mikrokontroler nie ruszał z miejsca. Sprawdzałem kilkakrotnie taktowanie, fuse bity, podłączenie, hexy (ładowałem nawet przesłane mi na 100% działające programy w hexie) i nadal nic.
    Problem rozwiązałem przypadkiem - w programie Khazama w opcjach Fuse and Lock Bits, kliknąłem Default , a następnie Write All. I Jak za dotknięciem magicznej różdżki. Wszystko ożyło. Szczerze mówiąc - zwykle wszystko chodziło mi nawet na fabrycznie nowych ATmegach. Pierwszy raz miałem taką sytuację.
    Może to komuś pomoże.

    Temat do zamknięcia.

    Pozdrawiam Dominik.
REKLAMA