Ads_700x200

tme

sobota, 8 czerwca 2013

Gdy nie działa USBASP pod ECLIPSEM

Witam,

Tym razem króciutki tylko kilkunastominutowy poradnik VIDEO odnośnie problemów jakie początkujący miewają gdy po raz pierwszy zabierają się za ECLIPSE i jednocześnie korzystają z programatora USBASP. Bardzo często rodzi się wśród nich pytanie typu: "dlaczego nie działa mi USBASP pod Eclipsem? pojawia się błąd rc=-1, natomiast w programie MkAvrCalculator procesor jest wykrywany". Dokładnie na to pytanie znajdziecie odpowiedź a może jeszcze na kilka innych ;) Zapraszam więc do obejrzenia materiału:

Rozdzielczość to oczywiście 1280x720:


poniżej podsumowanie w kilku punktach:


  1. Domyślnie (fabrycznie) każdy procesor AVR jest taktowany częstotliwością 1 MHz
  2. Programator USBASP wymaga w takiej sytuacji spowolnienia sygnału zegarowego SCK
  3. Do tego celu służy w starych wersjach programatorów zworka o nazwie SLOW_SCK
  4. Zaś w nowych programatorach jak ATB-USBASP zworki Slow_Sck brak, gdyż można ustawiać prędkość SCK programowo
  5. Program MkAvrCalculator potrafi sam sobie ustawiać programową zworkę Slow_SCK natomiast ECLIPSE nie potrafi
  6. Dlatego w ustawieniach Avrdude w Eclipse musimy w zakładce Other dodać specjalny parametr, dzięki któremu zostanie włączone programowe spowolnienie Slow_Sck
  7. Parametrem tym jest -B 8, który zawsze można podejrzeć w MkAvrCalculatorze


30 komentarzy:

  1. Po obejrzeniu mogę dodać kolejna modyfikacje mkAVRCalculator, Fusebit zawsze programował z najmniejsza prędkością co by nie było błędu jak w filmie, przy zmianie z 1 Mhz na 8 Mhz.

    OdpowiedzUsuń
    Odpowiedzi
    1. W zasadzie to bardzo dobry pomysł ;) muszę nad tym pomyśleć

      Usuń
    2. W eclipse gdy chce dodac programator pojawia mi sie cos takiego properties avr avr dude napis jest avr dude is not supported for static library projects o co ztym chodzi

      Usuń
    3. Witam mam problem z dodaniem programatora w eclipse properties avr avrdude avrdude not supported for static library projects

      Usuń
    4. To obejrzyj dokładnie ten poradnik
      http://mirekk36.blogspot.com/2015/07/eclipse-start-plus-pierwszy-program.html

      Usuń
    5. Obejrzalem i tak window preferences avr dude configuration juz podspodem pisze usb asp ale tak na filmie jeszcze jest dalej project properties avr dude no i swieci sie ten napis avrdude is not supported for static library projects oco tu chodzi co ja mam zrobic tez wtym miejscu niema takiego okna jak na filmie

      Usuń
    6. obejrzyj poradnik dokładnie po raz kolejny

      Usuń
    7. W zasadzie przyszedl mi doglowy pomysl project properties avr w tym oknie jest napis enabled individual for bulid Configurations to niepowinno byc aby zaznaczone

      Usuń
    8. Wszystko masz w filmiku do którego link ci podałem, obejrzyj.

      Usuń
    9. Dobra ok dzieki juz smiga nawet dioda mryga przy programowaniu z eclips okazalo sie ze stego pospiechu przy wybieraniu projektu niekliknelem avr cross target aplication tylko avr cross target library ja to zamienicie to wtedy niemozecie wybrac programatora i podczas pisania programu wyskakuje pelno bledow wybierzcie avr cross target aplication muj blad dziękuje za pomoc bo się naprawde przydala

      Usuń
  2. U mnie nie działał z innego powodu programator napisze to może sie komuś przyda.
    Nie wiem jaki inne programatory ale moj ma sterownik w wersji 1.2.4.0 i ten działa pod windows 7 32 i 64bit-y

    W mkavrCalculator w zakładce ustawienia zainstalowałem avrDude do jakiegoś katalogu i potem te pliki wkleiłem (zastąpiłem) do katalogu winavr-20100110/bin. Po tej operacji już działa ;)

    OdpowiedzUsuń
    Odpowiedzi
    1. Kurcze właśnie z głupoty spojrzałem na przedostatnia stronę książki Pana Mirka i było to opisane ;) kurcze szkoda ze nie wcześniej bo zaoszczędziło by mi to wiele czasu a też we video pomocy nic na ten temat nie było.
      A jako że dopiero na 50s jestem musiałem wiele nakombinować się.

      Usuń
  3. Chciałem bardzo podziękować ze dużą ilość informacji i filmów instruktażowych dla początkujących. Utknąłem na konfiguracji programatora jednak po paru godzinach udało się :) (nie do końca wprawdzie udaje się ładować przez mkAVR natomiast nie przez Eclipse, jednak wydaje mi się, że jeszcze to i owo doczytam i ten problem pokonam.)
    Pozdrawiam.

    OdpowiedzUsuń
  4. A ja mam pytanie co oznacza taki bład:
    "avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc"

    OdpowiedzUsuń
    Odpowiedzi
    1. Obejrzyj ten poradnik dokładnie:

      http://mirekk36.blogspot.com/2012/12/avr-jak-zaczac.html

      masz w nim to omówione. W skrócie ? - windows nie widzi programatora (np problem z driverami albo sprzętowy)

      Usuń
    2. Dziękuje za szybką odpowiedz. Sterowniki powinny być dobre bo instalowałem tak jak Pan pokazywał w poradniku :)
      Pozdrawiam i biore sie za ogladanie następnego super poradnika :)

      Usuń
  5. Witam,
    Panie Mirku pytanie.
    A jak się ma temat MKAvrCalculatora pod linuxem (ubuntu/LinuxMint) jak wtedy można ustawić slowSCK lub FuseBits na programatorze?? W eclipse jest opcja Wizard do ustawień Fuse bitów, ale jak ze slow SCK?
    Pozdrawiam serdecznie RadGaw

    OdpowiedzUsuń
    Odpowiedzi
    1. No przecież w tym właśnie poradniku pokazuję jak sobie programowo obsługiwać SLOW_SCK ... .nie ważne pod jakim systemem ...

      proszę zobaczyć gdy mówię o parametrze -B

      Usuń
  6. Witam . Mam problem z Eclipse .Mianowicie po zainstalowaniu go na laptopie z win 8.1
    i po kompilacji wyskakuje mi błąd avr-gcc.exe błąd aplikacji .
    Nie wiem z czym to moze być związane . Instalacje przeprowadziłem zgodnie z filmem pana Mirka.
    Proszę o pomoc .

    OdpowiedzUsuń
    Odpowiedzi
    1. Zajrzyj proszę na koniec tego artykułu: http://mirekk36.blogspot.com/2013/03/usbasp-win8-instalacja.html

      Usuń
  7. Witam .
    Panie Mirku mam jeszcze jeden problem , mianowicie podczas wrzucania programu do mikrokontrolera pojawia mi się taki błąd :
    avrdude: error: no usb support. please compile again with libusb installed.
    Jeśli hexa wyślę z MKAVRCalkulator to normalnie go ładuje , nie wiem czy to nie jest związane z win 8.1.
    Z góry dziękuję za pomoc .

    OdpowiedzUsuń
    Odpowiedzi
    1. A co to za programator ? tzn skąd ?

      Usuń
    2. W sumie mam podobnny problem.

      Wycinek z konsoli:
      Launching C:\WinAVR-20100110\bin\avrdude -pm16 -cusbasp -Uflash:w:Test.hex:a
      Output:
      avrdude: error: no usb support. please compile again with libusb installed.
      avrdude finished

      Zainstalowany AVRDude domyślnie na C, układ ATMEGA8L, wykrywany normalnie przez MKAVRCalculator, który wgrywa prawidłowo program, lecz przy próbie wgrania go przez Eclipse wyskakuje powyższy błąd. Zainstalowany ATB USBASP od Pana Mirku na każdym porcie USB, sterowniki USB zainstalowane. Dodatkowo przy próbie wykrycia układu przez Load MCU w Eclipse wyskakuje "Could not understand the output from AVRDude", wybrany USBasp z listy.

      Czy to kwestia złego procesora? Czy może oprogramowania?

      Usuń
    3. Obejrzyj DOKŁADNIE to:

      http://mirekk36.blogspot.com/2014/11/avr-jak-zaczac-z-eclipse-luna.html

      ale bardzo DOKŁADNIE, potem odinstaluj staroć WinAVR i wszystko będzie ci działać

      Usuń
  8. Dziękuję za szybką odpowiedź, poradziłem sobie :)

    Poniżej to, co zrobiłem, by działało poprawnie:

    Odinstalowałem WINAVR, zainstalowałem Toolchain z paczki spod filmu z linku. Zainstalowałem plugin do Eclipse (nie instalowałem Luny, nadal Indigo). Poprawiłem ścieżkę AVRDude w Eclipse. Oczywiście reboot po odinstalowaniu WINAVR oraz po instalacji Toolchaina. Nawet nie musiałem na nowo wybierać programatora.

    OdpowiedzUsuń
  9. Witam
    mam problem, który jest identyczny jak na tym zdjęciu http://atnel.pl/Upload/image/_SOFTWARE/MkAvrCalculator/Reakcja_na_zwarcie_MISO_oraz_SCK.jpg

    Sprawdziłem połączenia oraz stan pinów na wyjściu programatora (napięcie pomiędzy pinami vcc i gnd to nieco ponad 5v). Wszystko jest tak jak powinno. Próbowałem z podłaczonym kwarcem i kondensatorami 22pF oraz bez (z użyciem wewnętrznego oscylatora) ale bez efektu. Próbowałem też zewrzeć piny na programatorze - mam 3 - jedna w postaci zworki zmieniającej napięcie 3.3-5v. Przy 2 pozostałych nic nie zmieniało się. Sterowniki do win8.1 zainstalowane, programator usbasp, mikrokontroler atmega. Nie mogę nawet "przeczytać" w mkavrcalculator. Czy to leży po stronie niedziałającej atmegi czy programatora?

    OdpowiedzUsuń
    Odpowiedzi
    1. A co to w ogóle za programator? skąd konkretnie ? jaki model ?

      Usuń
  10. Jeśli chciałbym programować mikrokontroler w c++ tak jak w arduino (wykorzystując zalety programowania obiektowego, a więc i własne klasy i zewnętrzne biblioteki), poprzez arduino IDE, w przypadku Atmegi 328p-pu mam do wykorzystania 14 pinów I/O (tylko tak jak to jest podpisane dla arduino), czy można je również dowolnie konfigurować 9 w nocie opisane jako 23 rekonfigurowalne piny)? Potrzebuję dość sporo I/O z racji użycia wyświetlacza oraz wielu przekaźników.

    Jakie środowisko może Pan polecić dla programowania obiektowego? Do tej pory korzystałem z arduino IDE oraz wtyczki arduino pod eclipsem...

    OdpowiedzUsuń
    Odpowiedzi
    1. Wiesz co? poczytaj najpierw o prockach AVR ale nie przez pryzmat arduino .... bo tak to ciągle będziesz myślał kategoriami pin digital albo analog - zamiast tak jak to jest w nocie PDF

      Usuń
  11. Akurat przechodziłem przez to ostatnio :/. Co do oprogramowania to tak jak wyżej napisano -poprawiona wersja WinAVR z programu pana Mirka + Toolchain. U mnie dodatkowo wgrałem najnowszy flasz do procesora ze strony USBASP, na płycie z niebieskiej książki(mam chyba wczesne pierwsze wydanie) jest starsza wersja wsadu. I to może powodować problemy. W moim przypadku na laptopie z Windows 8 problemu nie było żadnego, natomiast komp stacjonarny z Windows XP nie działał na starym wsadzie- wykrywał urządzenie, programator się zgłaszał ale nie działał. Nie rozpoznawało urządzenia. Możliwe ze dlatego iż płyta jest z ok 2000 roku i USB jest jeszcze w wersji 1.1(a nie 2.0) co powoduje ze cześć rzeczy nie działa np nie wszystkie pamięci Pendrive. Więc bardzo możliwe ze u kogoś kto tak jak ja ma starego kompa do zabawy z uc będzie podobnie. Za to programator SI prog działa bez problemu ;)

    OdpowiedzUsuń