Skocz do zawartości

Kurs AVR - problem z pierwszym zaprogramowaniem


PolGraphic

Pomocna odpowiedź

Witam.

Na wstępie właściwie mogę zacytować jeden z mych poprzednich tematów:

Jestem osobą bardzo początkującą.

Natknąłem się na świetny kurs autorstwa ABXYZ dotyczący programowania AVR:

http://www.kursc.forbot.pl/str001.html

Tym razem mam następujący problem. Podłączyłem wszystko zgodnie z instrukcją (schematem), pobrałem odpowiednie oprogramowanie (WinAVR itd.). Poza tym system wykrywa programator (XP) i widzi go jako usbasp.

Po wybraniu w programmer's notepad (zgodnie z kursem) komendy Tools->Make All wszystko było OK (Exit code 0).

Natomiast po wybraniu Tools ->Program otrzymałem komunikat

avrdude -p atmega8 -P usb -c usbasp -U flash:w:led.hex

avrdude: error: programm enable: target doesn't answer. 1

avrdude: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

avrdude done. Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2

W makefile mam ustawione:

AVRDUDE_PROGRAMMER = usbasp

AVRDUDE_PORT = usb

tak czy tak, z tego co widzę programator jest dobrze połączony z komputerem (pali się zielona lampka, podczas programowania na chwilę zmienia się na czerwoną), a problem leży chyba w połączeniu uC z programatorem.

Zgodnie ze stroną http://tnij.org/epm7 , możliwe błędy to:

* Not Connect Programmer with Target circuit

* ISP Connector is bad connection

* Target circuit power is OFF

Połączenia sprawdzałem parokrotnie, zmieniałem też kabel łączący uC i programator. Słyszałem natomiast, że być może powinienem przełączyć jakąś zwrotkę (slow_sck), lecz niestety nie wiem dokładnie co to jest gdyż jak mówiłem dopiero zaczynam się bawić z elektroniką.

Używam kupnego programatora http://allegro.pl/item738576584_nowosc_programator_isp_avr_usb_rohs_atmel_fv.html (znalazłem do niego instrukcję:

http://protech-micro.pl/support/Instrukcje/Instrukcja%20uruchomienia%20programatora%20USBasp.pdf)

i układu atmega8 zgodnie z kursem.

Załączam zdjęcia:

http://img44.imageshack.us/gal.php?g=zdjcia00090a.jpg

p.s.

Wcześniej miałem błędy z połączeniem programatora z komputerem (nie widział go), ale już to rozwiązałem.

p.s.2.

Czy istnieje możliwość że podczas prób zaprogramowania uC coś w nim bezpowrotnie spierniczyłem?

Link do komentarza
Share on other sites

Witam.

Czy chodzi o to, co zaznaczyłem na czerwono:

Jeśli tak, to w jaki sposób ją 'założyć'? Czy czasem to, że ma na sobie ten wysuwany, czarny element nie znaczy że jest założona? Mam go zdjąć? Od razu przepraszam za niewiedzę.

//nawyk:

(poprawiłem)

Link do komentarza
Share on other sites

masz załączone dwie zworki na programatorze - jedna z nich odpowiada za zasilanie układu z programatora, a na którymś zdjęciu widać że diody się świecą, czyli zasilasz całość z zewnętrznego źródła zasilania i tym sposobem robisz zwarcie - jeżeli to prawda to zasil atmege tylko z jednego źródła.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Hm, co do świecenia się diod - to chyba raczej wynik oświetlenia/odbijania się światła - gdy robiłem zdjęcia, układ był wyłączony.

Próbowałem opcji z odłączoną zwrotką bardziej wewnętrzną - sprawa ma się tak samo, ten sam błąd :/

Zwątpiłem, i spróbowałem też z odłączoną zwrotką zewnętrzną (sck), ale ciągle jeden i ten sam błąd.

Link do komentarza
Share on other sites

Znowu wykażę się brakiem wiedzy.

W jaki sposób podłączyć miernik? Mam jakiś miernik uniwersalny (napięcie, natężenie itd.) - gdzie go podłączyć na tym moim schemacie?

Jeśli okaże się, że napięcie dochodzi - nie ma innej opcji jak zepsuta atmega8? A jeśli jest zepsuta, to tylko zakup nowej?

p.s.

Co do podłączania z zasilaniem z programatora - jeśli odepnę zasilanie do płytki, to cała reszta kondensatorków, rezystorków, diod itd. może zostać na płytce? czy muszę je usunąć, przed programowaniem atmegi?

Link do komentarza
Share on other sites

chodziło mi bardziej o sprawdzenie połączeń pod kątem ciągłości - ustawiasz test diody, buzzer, czy pomiar rezystancji (w zależności od tego jaki masz miernik), wtykasz jakiś kawałek drutu w oczko wtyczki która wchodzi do twojego programatora (ta dziesięcio pinowa), przykładasz czerwoną szpilke miernika do tego wetkniętego drutu, czarną do odpowiedniej nóżki procesora (sprawdzasz w nocie która to nóżka) i jeżeli miernik pika lub pokazuje zero omów to znaczy że sygnał z tego pinu dochodzi do danej nóżki, sprawdzasz tak wszystkie piny w wtyczce programatora i jeżeli sygnał dochodzi do wszystkich niezbędnych nóżek (mosi, rst, sck, miso, vcc, gnd) to znaczy że podłączenia masz ok, programator też będzie pewnie ok, więc kupujesz nowy uC

Link do komentarza
Share on other sites

A więc tak.

Ustawiając miernik na hFE podłączałem kolejno czerwoną szpilkę (V*znaczek omegi*mA) do odpowiedniego oczka wtyczki (przez wspomniany drucik), a czarną (COM) dokładałem do odpowiednich nóżek programatora. Następnie podobną operację wykonałem dla oczek wtyczki i końcówek kabla który wcześniej był dołączony do nóżki atmegi (wyjętego z płytki stykowej <- testowanie samego kabla).

Dla połączenia z MOSI (do nóżki) wynikiem były jakieś nie za wielkie wartości.

Dla MISO i STK wyświetlała się jedynka (z lewej strony, podobnie jak gdy nie dołączam szpilek nigdzie).

Dla kabli wyjętych z płytki, przykładając do ich końców i odpowiednich oczek we wtyczce:

MOSI, MISO i STK oraz GND wyświetlały jakieś wartości (trochę większe niż w przypadku pierwszego MOSI).

Jak mam to interpretować?

Zły kabel (MISO, STK), źle wetknięty, zła atmega, czy coś innego?

Wydaje mi się, że chodzi o połączenia...

Wygląda na to, że prąd nie dochodzi do MISO i STK na płytce, ale po wyjęciu i przyłożeniu miernika do końców tych przewodzików pokazują się już jakieś wartości.

Testy wykonałem parokrotnie, z identycznym wynikiem (tylko z MISO na początku przy wyjętym kabelku dostawałem po lewo 1, ale przy kolejnych próbach były już wartości - chyba niedokładnie przykładałem na początku).

Link do komentarza
Share on other sites

Hm, myślałem że to jest właśnie ciągłość obwodu :/

Czyli z tego nie da się nic stwierdzić?

I jak w takim razie ustawić miernik przy testowaniu? Na VDC lub stałe? Mam tam różne wartości m.in. 20, 2000m itd. - znaczą pewnie rząd pomiaru.

Podczas mierzenia muszę mieć włożony kabel programator-komp (żeby płyneło napięcie)? Czy mogę testować bez załączania (sama ciągłość?)

Nie mogę zlokalizować ikonki ciągłości.

Link do komentarza
Share on other sites

To pewnie taka z diodą i takimi łukami.

Tak, czy inaczej musisz mieć układ zasilony z zewnętrznego źródła, jeśli chcesz, żeby układ się w ogóle programował(chyba, że masz programator pod USB i zwartą zworkę zasilania układu).

Do samych testów lepiej nie podłączać zasilania, jeżeli nie testujesz działania układu, np. generowanego przebiegu, czy napięcia.

W przypadku ciągłości obwodu nie powinno być raczej podłączone zasilanie.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.