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

USBasp na Atmega8A-PU - komunikat "urzadzenie ma awarie"

maniak82 17 Gru 2013 16:07 1788 8
  • #1 13071097
    maniak82
    Poziom 10  
    Witam
    Jako nowy na elektrodzie i w temacie AVR mam problem.
    Przeczytałem pół Internetu i nie znalazłem rozwiązania ani takiego problemu.
    Nie znalazłem również na elektrodzie podobnego tematu

    No więc tak:
    Chciałem zacząć najtaniej jak się da :D
    Mam port LPT więc zrobiłem najprostrzą wersję STK200
    Kupiłem Atmega8a-PU i trochę drobnej elektroniki
    Na płytce stykowej zapodałem mikrokontroler i po zainstalowaniu i skonfigurowaniu Eclipse stworzyłem prostego migacza LED
    mkAVRcalculatorem pobawiłem się wstępnie zmieniając fusebity oraz wgrywając i zgrywając z uC program.

    Wszystko jak dotąd działa bez problemu.

    Kolejne kroki :
    STK200 mogę podłączać tylko do starego komputera - przy innych nie mam LPT
    Chciałem zaprogramować USBasp na moim uC .
    Wgrałem najnowszy soft ze strony tworcy USBasp
    Ustawiłem fusebity (testowałe zarówno "FF i D9" jak i "EF i C9")
    Zapalona dioda LED sygalizuje poprawne oprogramowanie
    Dody zenera mam na 3,3v bo wyczytałem przed zakupem że są lepsze
    Zasilanie filtuje 10nF kondensatorami
    Reset mam przez 10,2kOhm (2x5k1 takie miałem) do VCC
    Kwarc podpięty 2x22pF do masy (12MHz)
    Wszystko tak jak wyczytałem że jest najlepiej

    Problem:
    Po podpięciu na USB windows podaje, że urządzenie ma awarie

    Wgrywałem kilkukrotnie oprogramowanie / sam stworzyłęm projekt w eclipse z plików ze strony i kompilowałem przez eclipse tak jak swój program z mrugającymi diodami.
    Zmieniałem fusebity
    Sprawdzałem połączenia z portu usb do uC miernikiem
    zamianiałem sygnałowe przewody w porcie USB

    ...

    i NIC

    Podpinałem również układ po Linuxa (Debian) doinstalowując jakieś dodatkowe oprogramowanie (różne porady na stronach o AVR i Linuxie)
    dmesg podaje że układ nie przyjmuje adresu.

    Już nie wiem co innego mogę zrobić aby sprawdzić czemu nie działa.
    Proszę o pomoc
  • #2 13072191
    modliszka
    Poziom 16  
    Mam ten sam problem. Z tego co udało mi się ustalić to prawdopodobnie jest to wina atmegi 8- PU i kwarcu 12 MHz, bo wspomniana atmega według noty katalogowej działa tylko do 8 MHz, więc trzeba zastosować przynajmniej atmegę8 pracującą z częstotliwością 16 MHz lub podobną. Osobiście nie miałem jeszcze czasu tego sprawdzić.
  • #3 13072257
    maniak82
    Poziom 10  
    Z tego co ja czytałem to 8MHz jest ale dla Atmega8-PU a nie dla Atmega8A-PU
    Oczywiście w domu mam tylko 2szt Atmega8A-PU więc nie mam jak to potwierdzić

    Jedyne co mogę na ten temat to to że jak ustawiłem taktowanie zewnętrzne z kwarcem 12Mhz, a miganie LED ustawiłem na "co 1s" to porównując czas migania z zegarkiem wyszło ok.
    Moim zdaniem obsługuje do 16 MHz.
  • #4 13073354
    domind
    Poziom 14  
    sprawdz jeszcze hfuse=C9 lfuse=ff
    Jak nie to, moze jakis problem ze sterownikiem?
  • #5 13073509
    landy13
    Poziom 31  
    maniak82 napisał:
    Po podpięciu na USB windows podaje, że urządzenie ma awarie
    Windows wymaga sterowników. Zainstalowałeś? Nic o tym nie piszesz.
  • #6 13073543
    maniak82
    Poziom 10  
    No wiec tak : mam WinXP
    Za każdym razem gdy Windows wykrywa niepoprawnie działające urządzenie na siłe podaje mu ścieżkę do sterowników. Za każdym razem podaje dwie ścieżki - libusb_0.1.12.1 oraz libusb_1.2.4.0 i nic to nie daje. Windows zachowuje się jakby całkowicie miał problem z wykryciem co to za urządzenie.

    Czy istnieje możliwość aby uC posiadał kilka we/wy niedziałających poprawnie?
    Sam uC działa ok przy wgranym innym programie więc może tylko jego część jest uszkodzona?
  • #7 13073630
    domind
    Poziom 14  
    Wszystko jest mozliwe. ;)
    Pisales ze masz drugi, to sprobuj na nim.
    Ja raz szukalem zimnych lutow, beldow w programie, a przyczyna bledu byla nozka proceora ktora sie zagiela i nie weszla w gniazdo.
    Zdjales zworke z J2 przy podlaczaniu do USB?
  • #8 13073647
    maniak82
    Poziom 10  
    Całość mam złożoną na płytce stykowej. Wiem, że one czasem nie działają jednak spradzałem miernikiem połączenia do nóżek uC
    domind napisał:
    Zdjales zworke z J2 przy podlaczaniu do USB?

    Obecnie mój układ na płytce składa się tylko z częsci przyłącza USB więc inne nóżki nie są podpinane. Chciałem najpierw skomunikować uC przez USB.
    domind napisał:
    Pisales ze masz drugi, to sprobuj na nim.

    Jestem chwilowo poza domem więc jak będę miał dostęp do płytki sprawdzę na drugim uC :)
  • #9 13078103
    maniak82
    Poziom 10  
    Zmieniłem uC na drugi i nic
    Zmieniłem kwarc na drugi i nic
    Podczas gdy podłączałem i odłączałem układ testując różne konfiguracje fusebitów okazało się, że raz wykryło USBasp
    coś nie styka ... coś nie łączy ...
    Po kilku próbach okazało się, że przewód USB wyciągnięty ze starej myszy przylutowany do goldpinów podpięty do płytki stykowej nie łączy wystarczająco pewnie.

    Poprawiłem połączenie i wszystko zaczęło działać.
    Zaprogramowałem również drugi uC (notabene wszystko jest na jednej płytce stykowej) czyli programator działa

    Dziękuję wszystkim za pomoc
REKLAMA