Skocz do zawartości

Problem podczas programowania płytki


Wojciech_

Pomocna odpowiedź

Witam!

Mam problem podczas programowania płytki, pochodzącej z zawodów na bydgoskim UTP.

Używam programatora USBasp i postępuję według instrukcji z strony zawodów: http://roboty.utp.edu.pl/index.php?option=com_content&task=view&id=67&Itemid=75

Gdy już wszystko zrobię wg tych instrukcji, klikam Execute w avrDUDE, i programator rozpoczyna swoją pracę - dioda sygnalizacyjna świeci się.

Gdy dioda gaśnie odłączam wszystko, lecz robot działa według dawnego programu, nie ma żadnych zmian.

Dodatkowo w rubryce output w avrDUDE pojawia się komunikat który widać na zdjęciu, a który różni się od tego w tutorialu, chociażby rozmaitymi komunikatami o błędach.

Proszę o pomoc, co mam zrobić aby prawidłowo zaprogramować płytkę?

Link do komentarza
Share on other sites

Sprawdź połączenie - program chyba nie wgrywa się w całości. Z błędów wynika, że programator czasami nie wykrywa procka lub wykrywa go, ale nie może z czytać sygnatury (0x.....)

Odpuść sobie WinAVR jest niewspierane od prawie 3 lat przez co może mieć problemy z nowymi prockami

Polecam Eclipse (Wspiera USBasp i nie wymaga dodatkowych programów do zaprogramowania procesora):

https://www.forbot.pl/forum/topics20/dla-poczatkujacych-szybki-start-z-srodowiskiem-programistycznym-eclipse-vt7477.htm?utm_source=forbot&utm_medium=link_katalog_art_headline&utm_campaign=katalog_art

Możesz użyć Atmel Studio (Avr Studio), ale nie polecam przy USBasp

1.Wrzucaj w przyszłości screeny z całego programu

2.W obecnym programie powinno być coś w rodzaju "Erase chip before programming" zaznacz to i nowy program powinien chodzić o ile jest dobrze napisany i skompilowany

Link do komentarza
Share on other sites

A co to są te przewody?

Programator mam połączony z płytką zwykłą szarą listwą (10 żył).

Zainstalowałem eclipse galileo, plugin do avr, dodałem mój programator i przełączyłem na obsługę C (w panelu u góry jest młotek do kompilacjii).

Nie wiem tylko jak za pomocą tego wszystkiego wgrać program na płytkę.

Chcę wpierw wgrać program z tej biblioteki http://roboty.utp.edu.pl/index.php?option=com_content&task=view&id=74&Itemid=75

Jak to zrobić?

[ Dodano: 24-04-2013, 17:02 ]

http://2.bp.blogspot.com/-3Tcz0JRdwkQ/T-qGwQkN-6I/AAAAAAAACQs/qITI5BPLIa0/s1600/IDC-kabel-tasma-avr-isp.gif

Tak wygląda mój przewód pomiędzy programatorem a płytką, tylko że jest dłuższy.

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

Programator komunikuje się z mikrokontrolerem przy użyciu standardu ISP. Są tam sygnały:

VCC - zasilanie

GND - masa

RST - ReSeT

SCK - Serial ClocK

MISO - Master Input, Slave Output

MOSI - Master Output, Slave Input

Ostatnie dwa służą bezpośrednio do transferu danych, jeśli coś jest z nimi nie tak, mogą być zaburzenia w programowaniu. Sprawdź omomierzem czy ścieżki, bądź taśma IDE nie są przerwane.

Link do komentarza
Share on other sites

Taśma ma opór bliski zeru, podobnie ścieżki odchodzące od złącza na programatorze i na płytce z atmegą.

[ Dodano: 24-04-2013, 21:35 ]

Spróbowałem z kolejną nakładką na AVRdude - SinaProg.

Oto komunikaty po próbie porozumienia z atmegą:

avrdude -C avrdude.conf -c usbasp -p m32 -q

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.

[ Dodano: 24-04-2013, 21:51 ]

Procek to ATMEGA32L.

Czy jest jakiś program do avrdude, który go obsłuży?

Link do komentarza
Share on other sites

No jak wywala błąd rc=-1 to:

-albo nie są odpowiednio podłączone wszystkie linie

-albo masz ustawione fusebity na zewnętrzny oscylator i go nie podłączyłeś

-może być też tak że masz procesor ustawiony fabrycznie na 1MHz a na USBasp nie masz włączonej zworki SLOW

Link do komentarza
Share on other sites

Wszystkie linie podłączam taśmą którą sprawdziłem omomierzem.

Programuję gotową płytkę, jak na zdjęciu.

Próbowałem bez zworki oraz z zworką SLOW.

Zasilanie jest podpięte jak na schemacie.

[ Dodano: 25-04-2013, 16:25 ]

Nie wiem co to są fusebity ale mam w programie opcje odnośnie High, Low, Ext i Lock (fuse).

W każdym mogę zaznaczyć Write Read i 0x...

Jak je ustawić prawidłowo?

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.