Skocz do zawartości

[Programowanie] Szybki start z WinAVR


Pomocna odpowiedź

Dzięki PrzemekM72, sprawdzę w ciągu kilku dni i jak się przyda poleci piwko.

Nie miałem jeszcze do czynienia z Win7 i tak sobie trochę panikuję ;]

Korzystam z AVRDude na win7 x64, sam program dziala bezproblemowo, jedynie mam problem z sterownikami do programatora (stk500v2). Sterowniki nie sa podpisane cyfrowo i aby programator zostal wykryty w systemie poprawnie trzeba przy uruchamianiu systemu wybrać opcję aby system nie sprawdzał sterowników nie podpisanych cyfrowo. Wtedy wszystko śmiga bez problemu. Próbowałem się bawić jednym programikiem, ale i tak trzeba było uruchamiać ponownie system, a wyłączanie sprawdzania czy sterowniki są podpisane cyfrowo w "cmd" nie pomaga. Jak będę na swoim kompie (jutro wieczorem) napisze dokładniej czego próbowałem, teraz nie pamiętam nazw programów.

Witam, kierując się instrukcją, zainstalowałem środowisko WinAVR, zaprogramowałem uC, wszystko chodzi ładnie. Chciałbym się tylko dowiedzieć jak zatrzymać program z poziomu komputera?

Wgrywam do uC program z pętla nieskończoną, sprawdzam jak zachowują się napędy, i w tym momencie chce żeby przestały działać bez odłączania zasilania.

gdzie jest jakis reset w WinAVR ?! 🙂

Zeby zatrzymać program najlepiej zaprogramuj sobie jakiś guzik którym wyskoczysz z pętli. Z tego co się orientuje to w WinAVR nie ma czegoś takiego jak reset. Możesz sobie zrobić reset na guziku ale on tylko zresetuje uC (nie usunie zapisanego w nim programu) i pętla zacznie działać od początku.

Mikrokontroler przestanie działać jak odepniesz od niego zasilanie 😉

Z tego co zrozumiałem to tobie chodzi o reset w programie. Nie można czegoś takiego zrobić, bo po wgraniu programu do uC, nie korzysta on już z komputera 😉

Mam nadzieje ze pomogłem, chociaż mogę się mylić bo też jestem początkujący 😋🙂

  • 2 miesiące później...

W pliku Makefile ustawiłem sobie, żeby po kompilacji kod wynikowy dostanę w systemie binarnym.

A cały czas dostaję w hex... da się coś z tym zrobić.

Witam,
mam taki mały problem z programatorem, mianowicie posiadam programator USBAsp, mam do niego avrdude-gui, wszystko działa.

Chciałem żeby mi programowało przez Prog. Notepad, ale gdy uruchomiłem programowanie z plikiem makefile (w załączniku) dostałem taką odpowiedź:

> "make.exe" program
avrdude -p atmega32 -P com1     -c usbasp  -D -e -F -U flash:w:MAOR_main.hex 
avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc
make.exe: *** [program] Error 1

error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc - z avrdude-gui oznaczało że program stracił połączenie z programatorem i potrzebny był reset urządzenia(ponowne połączenie)

Lecz jak rozwiązać ten problem gdy restart w prog. Notepad nie pomaga?

Kopiowałem avrdude.exe, avrdude.conf do folderu bin i niestety to samo.

Wiem że jeszcze są sterowniki do usbasp, ale na pewno są poprawne, ponieważ działa z avrdude-gui.

Czy ktoś wie jak rozwiązać problem?

Może coś źle piszę w makefile?

Oto linijka z avrdude-gui z poprawnymi ustawieniami:

"C:\Documents and Settings\Lenovo\My Documents\ELEKTRONIKA\AVR MONSTERpack\AVRdude\avr-dude + graphic interface\avrdude.exe" -p m32 -c usbasp -C "C:\Documents and Settings\Lenovo\My Documents\ELEKTRONIKA\AVR MONSTERpack\AVRdude\avr-dude + graphic interface\avrdude.conf" -P com1 -U flash:w:"C:\Documents and Settings\Lenovo\My Documents\ELEKTRONIKA\programy avr w C\Mobot\MAOR_main.hex":a -D -e -F
  • 2 tygodnie później...

Witam.

Mam problem z programatorem DRAGON pod WinAVR. Program nie chce widzieć tego programatora może ma ktoś pomysł jak tego dokonać.

Pozdrawiam.

  • 1 miesiąc później...

Mam problem z zaprogramowaniem Atmega 8

Posiadam programator pod lpt1. Jestem kompletnie zielony:), to moja pierwsza próba i już bląd:( AVRdude wyrzuca error podczas weryfikacji:

Co moze byc przyczyną?

Sygnaturę odczytał prawidłowo? Jaki dokładnie masz programator? DAPA, DASA, DASA3, BSD, STK200, (abcmini chyba też jest pod lpt)?

Problem rozwiązany:) Zacząłem od sprawdzenia wszystkich połączeń i okazało się że nie wszystkie nóżki uC stykały na płytce stykowej:)

A mam jeszcze jedno pytanie: Dlaczego po odłączeniu programatora (STK200) od kompa program na uC przestaje się wykonywać?? Zasilanie jest osobne i cały czas jest włączone.

Prawdopodobnie reset zostaje zwarty, przez programator do masy. To samo się czasami dzieje, jak wyłączymy komputer z podpiętym programatorem do kontrolera i komputera.

Witam

Robię wszystko jak w instrukcji i na komputerze z Win XP działa wszystko, lecz na laptopie z Win 98 wywala błąd przy kompilacji.

avr-gcc -c -mmcu=atmega8 -I. -gstabs -DF_CPU=1000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./led.lst  -std=gnu99 -MMD -MP -MF .dep/led.o.d led.c -o led.o 
led.c:5:1: warning: "F_CPU" redefined
<command-line>: warning: this is the location of the previous definition
led.c: In function '_delay_ms':
led.c:24: internal compiler error: Illegal instruction
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://sourceforge.net/tracker/?atid=520074&group_id=68108&func=browse> for instructions.
make.exe: *** [led.o] Error 1

Próbowałem na najnowszej wersji WinAvr i 20080610

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...