W katalogu "WinAvr\mfile" jest plik makefile_template
Tak jak napisał JanBernat, zainstaluj AVR Studio 4 i zapomnij o MakeFile i problemach z tym związanych.
Coś nie tak z twoim makefile. Make musi działać. Tu jest [url=http://www.sax.de/~joerg/mfile/]str... domowa Mfile. Pobierz wersje dla UNIX (nie musisz instalować ani uruchamiać). Plik makefile_template to wzór.Skopiuj do katalogu projektu. Edytuj zmieniając tylko : MCU = procek Program jedno plikowy o nazwie main.c powinien się skompilować.
Witam! W WinAVR 'make all' nie programuje proca. nie używam Programmers Notepad'a więc nie wiem jak tam to jest zrobione, ale od tego jest polecenie 'make program', ewentualnie w makefile w wierszu: # Default target. all: begin gccversion sizebefore build sizeafter end po end dopisz 'program'.
Tutaj jest maly kurs programowania AVR'ek, jest tez, jak zrobic makefile do ATMega8... Wystarczy zmienic kilka wpisow i bedzie na ATTiny12... http://www.patron.net.pl/konstruktorzy/A... >>> Strona tymczasowo niedostepna Pozatym, pakiet WinAVR ma gotowe narzedzie do tworzenia plikow makefile, zwie sie toto MFile...
A co zmieni zainstalowanie AVR Studio? :) O makefile zapomni ale ma tu z czym innym też problemy widać. Chce korzystać z WinAVR niech korzysta. Makefile nie jest aż tak trudno zrobić, otworzyłem projekt, wywaliłem makefile, paroma kliknięciami utworzyłem nowy i rusza. A to, że niedokładnie przepisany kod z książki to już inna sprawa. Poza tym książka...
Hejka (at)koleszka odkrycie na miarę Einsteina!!!. Ja też mam stare rupiecie w domu , mogę Ci podesłać. Świat poszedł do przodu i na necie można znaleźć pełno wyjaśnień jak przejść z WinAvr na nowszy Toolchain. Z avrdude w Atmel Studio też nie ma problemów. Zastanawia mnie tylko kto dziś wie jak napisać plik makefile?
1. Wklej jeszcze lib/avr_make 2. Czy biblioteka lcd w tym makefile to Twoja biblioteka lcd? Jeżeli nie, to gdzie umieściłeś swoją bibliotekę i wklej zmodyfikowane linie makefile.
2. function declaration isn't a prototype - już wiem o co chodziło. W definicji miałem np: init_uart() a powinno być init_uart(void). Czy funkcja bezparametrowa na pewno wymaga void'a? Z tego co mi się zdaje to nie.. (A co do różnicy w pliku nagłówkowym a pliku .c to różnicy tej mieć nie moge bo w WinAVR nie pisze się pliku .h osobno. nie wiem jak...
No coz myslalem ze troche kumasz o co chodzi w Makefile i bedziesz w stanie dopasowac sobie to co napisalem do wlasnych celow no ale mylilem sie ;-).Poprawilem ten Makefile ale nie mam mozliwosci go przetestowac wiec jakby jakies bledy byly to daj znac ale najpierw sprobuj pokombinowac w ten sam desen co ja.Dodalem wygodna zmienna OBJDIR tak aby tylko...
Nawet nie tyle biblioteki, co pliki nagłówkowe z prototypami funkcji. W dodatku masz jeszcze jeden poważny błąd - redefinicja symbolu F_CPU. W makefile masz go zdefiniowany na 8MHz, a w programie go redefiniujesz na 4MHz. Ten symbol powinien być raczej globalnym symbolem definiowanym w makefile, nigdy w programie.
W WinAVR długość kodu zależy od Makefile. Wygenerowałem kiedyś Makefile za pomocą Mfile i pusta funkcja main stanowiąca program osiągnęła ponad 2kB! Używam najmniejsze działające Makefile dostarczone z kompilatotem. Wtedy WinAVR daje kody mniejsze niż inne kompilatory.
Jednak ściągnij AvrStudio- korzysta z tego samego kompilatora a jest dużo wygodniej niż z WinAVR. No i samo robi makefile- jak masz jakiś błąd w ręcznie zmienianym makefile to będziesz się z tym męczył jeszcze nie wiadomo ile- a szpaki przylecą w przyszłym roku. No i możesz przekopiować pliki z płytki mirka i jakoś sprawdzić. Bo jak wszystko jest inne-...
Hej , Znajdź fragment: # Default target. all: begin gccversion sizebefore build sizeafter end build: elf hex eep lss sym elf: $(TARGET).elf hex: $(TARGET).hex eep: $(TARGET).eep lss: $(TARGET).lss sym: $(TARGET).sym Linia build: elf hex eep lss sym powinna wyglądać mniej wiecej...
Sciagnalem sobie soft wedle podanych zestawien, lecz zestaw ten ma wade tego typu, ze trzeba sie przebic przez troche dokumentacji, by stworzyc wlasciwy makefile, oraz pewnie jeszcze inne elementy sterujace srodowiskiem. Akurat WinAVR jest bardzo pro-userski bo jest dostarczany ze wszystkim a wiec nawet przykladowym makefilem ktorego modyfikacja dla...
Witam, Makefile to plik używany do deklaracji zależności pomiędzy plikami w projekcie i opisujący komendy używane podczas kompilacji. W WinAVR jest program MFile, który umożliwia w dość prosty sposób wygenerowanie standardowego pliku Makefile - poszukaj w: Menu Start > Programy > WinAVR > MFile Pozdrawiam, Dr.Vee
Ostatnio mój kolega miał bardzo podobny problem. Przyczyną okazał się polski znak diakrytyczny w nazwie konta użytkownika systemu windows, a folderem docelowym był pulpit, czy moje dokumenty (już nie pamiętam). W każdym razie ścieżka do folderu docelowego, w którym miały być generowane pliki HEX i inne zawierała polską literę. Problem samoczynnie rozwiązał...
Hmm... O ile dobrze zrozumiałem z pierwszego posta, plik main.c masz w katalogu głównym a pozostałe w usbdrv? Spróbuj może tak: SRC = main.c usrbdrv/usbdrv.c usbdrv/oddebug.c ASRC = usbdrv/usbdrvasm.S Jest szansa, że zadziała ;)
Mi sie na twoim makefile'u nie chce kompilować natomiast na moim idzie bez problemu. Spróbuj przeedytowac pod swoje potrzeby może makefile z katalogu WinAVR\mfile\makefile_template.old i wgraj do katalogu z projektem jako makefile.
Ano trzeba dla programów Unix'o pochodnych np tych dostępnych w winavr. No nie rozumiemy się . Może opiszesz na jakimś przykładzie z pełnymi ścieżkami. Jeśli pliki będą w katalogu w którym znajduje się makefile to nie trzeba nic podawać. Jeśli "głębiej" to należy poszukiwania zacząć od katalogu projektu.
Biblioteki tak jak tu na przykład: http://www.elektroda.pl/rtvforum/topic95... W najnowszym WinAVR chyba jest zmieniony sposób tworzenia bibliotek (szablon makefile), ale to można w szablonie tym doczytać, a reszta tak samo. Po stworzeniu biblioteki należy ją oczywiście zlinkować z projektem, podejrzyj sobie w makefile, tak samo jak są tam zrobione...
Wyglada to na problem z programem make ale nie potrafie powiedziec jaki.Czy plik led.c masz w tym samym katalogu co plik Makefile ?
W załączniku poprawiony makefile :D
Wygląda na to, że AVR Studio nie potrafi utworzyć pliku makefile. Stąd wykonanie make się nie powiedzie. Czy katalog w którym są pliki C i H tego projektu jest nazwą długą w systemie Windows? Tzn. występują tam spacje w jego nazwie, ewentualnie w całej ścieżce? Możesz mieć też w oknie konfiguracji puste pole ze ścieżką Output File Directory . http://obrazki.elektroda.net/63_12158621...
Działasz w Windows? Jeżeli tak zainstaluj AVR Studio 4 i zapomnij o makefile.
Dodaj do projektu (lub pliku makefile) pliki od lcd...
Chodziło mi o plik "makefile" :). Rozumiem z tego że dla bardziej złożonych programów, podczas kompilacji, niezbędny jest plik makefile. Jak chce ci sie wklepywac ręcznie po kolei 10-20 albo wiecej poleceń to możesz obyć sie bez pliku. Chyba że WinAVR jest jakis dzwiny i sie nie da naczej. Ja używm avr-gcc 1. W takim razie czy istnieją inne edytory...
Ustaw w opcjach projektu w AVR Studio ścieżkę dostępu do make i avr-gcc znajdujących się w katalogu instalacyjnym WinAVR.
Co masz w pliku makefile? Osobiście doradzam porzucenie przestarzałego WinAvr i instalację Atmel studio 6. Co do zdjęcia - nic z niego nie wynika - nie wiadomo który kabelek jest od czego.. Pozdrawiam.
Też kiedyś porównywałem WinAvr z Bascomem i zauważyłem, że spory wpływ na wielkość kodu ma także Makefile. Wygenerowany przez WinAvr z bajerami dawał większy kod niż Makefile wzięty od Pana Otulaka.
zostaw cofy, zajmij się elfami, "debug platform" ustawiasz w Makefile... ;)
opcji "nazwa projektu" nie ma do wyboru w opcji programu makefile. Jakoś w winAVR nie potrzeba tego dodawać. Poza tym gdybym chciał ręcznie dodawać to nawet nie wiem gdzie, gdyż trochę tego kodu jest. PS W programie AVRStudio eksportowałem makefile i potem dodałem na końcu pliku makefile opcje z wygenerowanego pliku make za pomocą makefile i nic to...
Hej, Biblioteka Petera Fleury jest OK. Podaj może co z nią robiłeś. Z komunikatu (chyba powinno być "undefined reference to 'lcd_init' ") wynikałoby, że nie masz podanego pliku "lcd.c" w liście źródeł w Makefile. Jeśli używasz WinAVR, w Makefile powinieneś mieć taką linię (ostatnia w ponizszym fragmencie): # Hey Emacs, this is a -*- makefile -*- # AVR-GCC...
AS4 używa do kompilacji WinAVR, cała różnica może tkwić więc wyłącznie w pliku makefile. Używasz więc zapewne pliku makefile z WinAVR? Jeśli tak to dołącz libm. Jeśli chcesz użyć AS4 do kompilacji, odinstaluj go i zainstaluj ponownie. Ew. możesz ręcznie ustalić ścieżki do gcc i make w opcjach projektu.
Błędy na oryginalnym pliku makefile: > "make.exe" all make.exe: *** No rule to make target `all'. Stop. A kto Ci powiedział, żeby go tak zawołać? Albo żeby przerabiać? Przecież w środku tego makefile-a jest instrukcja. Gdybyś wywołał po prostu make, bez parametrów, to by Ci ją wydrukował (na konsoli!).
Ma być tak: C:\WinAVR-20100110\bin\avr-gcc.exe I tak: C:\WinAVR-20100110\utils\bin\make.exe W ogóle coś dziwnie robisz- przecież w AVRSudio plik make jak i dostęp do niego robi się sam. Chyba że zaznaczyłeś opcję "use external makefile".
A co z TARGET , w makefile :?: Czy przypisałeś tej opcji nazwę pliku głównego bez rozszerzenia :?: Z raportu kompilacji wynika , że pozostawiłeś TARGET = main , a w tym konkretnym przypadku , powinno być TARGET = 1 , bo Twój plik główny nazwałeś 1.c . Piotrek
Witajcie, siedzę nad przystosowaniem bibliotek FatFS do obsługi kart SD... pojawił sie jeden problem, mianowicie gdy kompiluję przykładowy program na pliku oryginalnym pobranym wraz z bibliotekami FatFS wszystko działa OK - bez błędu ani ostrzeżenia (plik Makefile w załączniku), natomiast gdy chcę to skompilować na swoim pliku Makefile (nazwany Makefile1...
W 21 linii pliku makefile usuń słowo "eeprom", czyli: zamiast: all: $(PRG).elf lst text eeprom ma być: all: $(PRG).elf lst text
Dzięki Szelus!!! Co tu czytać po angielsku jak ja po polsku nie mogę skumać instrukcji makefile`a. Pozdrawiam smalski
Ano racja :). Ślepy jestem. Tak jak kolega tadzik pisze pewnie main.c nie jest w tym samym katalogu co makefile. Edit: To jak nie to, to wklej tutaj projekt razem z makefile (makefile wrzuc).
Najwidoczniej jest coś nie tak z plikiem makefile. Proponuję użyć pliku Makefile np. z pakietu WinAVR.
W WinAVR jest ProgrammersNotepad, ma (w menu Tools) Clean (posprzątaj - przed kompilacją) i Make All(utwórz wszystko - z poleceń w makefile) A Makefile możesz wygenerować również w WinAVR - skryptem MFile (zazwyczaj skrót do niego ląduje na pulpicie - trzeba poustawiać wszystkie opcje, pokazać gdzie zapisać... ) -- Pozdrawiam, Daniel
Nie wiem jak w avrstudio, pewnie trzeba dołączyć do projektu. W WinAvr się w pliku makefile dopisywało że ma użyć pliku *.c
Muszę Cię zmartwić ;) , ale to nie jest kod wygenerowany dla ATMega 16. Jakiego środowiska używsz :?: AVRStudio+WinAVR,PN+WinAVR , czy jeszcze coś innego :?: Co z plikiem makefile :?: itp. Tak powinien wyglądać wektor przerwania dla Megi16 i nie tylko: 0:0c 94 2a 00 jmp0x54 <__ctors_end> Jeden wektor zajmuje 2 słowa(4 bajty) , a u Ciebie :?:...
Ale jak tak zaprogramuje to nic się nie dzieje, więc albo to wina programu albo ustawień makefile, bo muszę go skonfigurować żeby mi wywaliło plik .hex
Jasne, krasnoludki ukradły :) I zablokowały google. To standardowy komponent WinAVR, dodaje się opcją linkera -lm. A ściszlej to zależy od budowy twojego makefile.
avr-gcc: C:\WINAVR/avr/lib/libc.a: No such file or directory Masz gdzieś w makefile na sztywno wbitą złą ścieżkę do WinAVR, bo z reszty komunikatów wynika, że masz zainstalowane w c:/winavr-20100110.
Dobrze? Nie za mały ten hex? edit - teraz spojrzałem jeszcze raz i wychodzi 4.03KB hex, ten ze źródłami chyba podobnie więc pewnie dobrze. Nastepnie zmieniam w pliku makefile (projekt ze zmianami w osobnym katalogu) "DEVICE = atmega88p", Niech kolega zmieni p na P.
Co masz na myśli pisząc gdy kompiluję w WinAVR? W AS4 robisz cały projekt, klikasz build i już. Żadnych makefile nie robisz. A symulator masz pełny.
Przecież, twój program nie nazywa się main.c tylko pierwszy2.c! Nic nie mieszaj z makefile przez mfile jak kompilujesz a AVR Studio. Wszystko się ustawia w tym oknie. http://obrazki.elektroda.net/10_12692809... Proszę. Program skompilowany bezbłędnie.
Zresztą dziwne jest to, widzi mimo to te pliki albo nie dochodzi do momentu sprawdzenia czy istnieją. Nie do końca zrozumiałem, co masz na myśli, ale dla mnie nic dziwne nie jest. Już pisałem dlaczego: make buduje na podstawie zależności, w tym Makefile: elf<-main.elf<-pliki .o<-pliki źródłowe. Lista plików .o nie jest jawnym, a tylko pośrednim...
Skoro klasy, operatory new i delete są niedostępne Wydaje mi się że klasy są dostępne, tylko obiektów nie możemy tworzyć (i usuwać) dynamicznie. Jeśli używasz winavr to wystarczy zmienić w makefile CC = avr-gcc na CC=avr-g++ Przynajmniej tą klasę którą podałeś na wstępie udało mi sie zaimplementować, utworzyć obiekt tej klasy (statycznie) i wykonać...
To ja załączam odpowiedź.To jest prosty przykładzik projektu z AVRStudio , przystosowany do PN-a.Winy za błędną kompilację Twojego projektu , upatruję w makefile i pliku *.S(syntax) ;) Piotrek PS "Przerzuć się" na AVRStudio, a odpadnie Ci kłopot z makfile :D
zainstalowałem winAVR-a z ustawieniem sciezek PATH w systemie, a nie jak opisywano w kursie EdW poprzez pliki wsadowe, plik Makefile stworzylem w programie Mfile WinAVR. Teraz kompilator reaguje na niego prawidłowo
Brakuje Ci jeszcze pliku lcd.c, czy cokolwiek W pliku lcd.h masz tylko prototypy funkcji i definicje makr. Tu ściągnij sobie bibliotekę: http://homepage.hispeed.ch/peterfleury/a... Plik (bibliotekę) z funkcjami (.c) musisz dorzucić do makefile tak, żeby Twój program i biblioteka zostały skompliowane to plików .o, a następnie połączone...
A jednak nie do końca mi się to udało uruchomić... tzn zmodyfikowałem plik io.h oraz dodałem bibliotekę dla własnego procka (nazwałem go iglo), ale gdzieś jeszcze trzeba coś dodać/zmienić bo kompilator go nie "widzi", To będzie gdzieś w źródłach gcc; raczej będziesz musiał jeszcze przekompilować kompilator.
Kolego, spójrz na wywołanie pierwsze, to błędne. avrdude -p -c stk500v2 -P com3 -V -U flash:w:main.hex a teraz to drugie avrdude -p atmega8 -P com3 -c stk500v2 -U flash:w:testowy.hex nie widzisz różnicy? Wynika to z błędy w Makefile'u, przyznaje, z mojej winy. Szkoda, że nie przeglądasz tego pliku i nie starasz się zrozumieć jak to działa....
matrix0606 --> 1. a jaką masz wersję WinAVR? 2. robiłeś jakieś zmiany w makefile ? - zainstaluj najnowsze WinAVR - dla testu skompiluj bootloader z tego załącznika RAR w moim poście powyżej! ale bez wprowadzania żadnych zmian w makefile - podaj polecenie "make" zamiast "make all" Bo wygląda na to że albo masz starszą wersję WinAVR, albo coś namieszałeś...
Bibliotek, których nie uzywam w ogole nie dolaczam - bo i po co! Chodzi o to, że nie zawsze wykorzystuje wszystkie procedury/funkcje zawarte w danej bibliotece - te nieuzywane tez mi sie kompiluja! Przejrzałem te biblioteki i na moje oko posiadaja ta sama wade... To jeśli da się pogrupować jakoś te Twoje funkcje, to ja bym zrobił to używając preprocesora.....
Hiob napisał I TU POJAWIA się PROBLEM PONIEWAZ DO PAMIECI MIKROKONTROLERA POWINNA ZALADOWAC się TYLKO PROCEDURA A - RESZTA JEST PRZECIEZ ZBEDNA - A MIEJSCE W PAMIECI ZAJMOWANE PRZEZ PROGRAM POWINNO się ZMNIEJSZYC - W RZECZYWISTOSCI ZAMUJE TYLE SAMO MIEJSCA CO PROGRAM1 Tez mam ten sam problem, nie wiem jak w winavr wlaczyc optymalizacje kodu? czy ktos...
Otwierasz programik MFile dołączony do pakietu WINAVR, klikasz File>open i wybierasz swój plik Makefile z katalogu projektu który tworzysz. Następnie klikasz zakładkę Makefile > C/C++ Source file(s) i wpisujesz lcd.c i klikasz ok. Zapisujesz makefile i ma działać.
A...!!! Zapomniałeś dodać że piszesz w AVR-GCC! To niestety zmienia postać rzeczy. Ja podałem raport z asemblacji pliku z programem w kodzie maszynowym. Najprawdopodobniej trzeba doczepić jakiś dodatkowy parametr, modyfikując makefile. Niestety AVR-GCC znam poniżej krytyki. :cry: Witam. Problem się sam rozwiązał przypadkowo przy rozwiązywaniu innego....
... i do tego oryginalne IDE: - AVR Studio 4.xx: http://mikrokontrolery.blogspot.com/2011... - lub Atmel Studio: http://mikrokontrolery.blogspot.com/2011... byś nie męczył się w WinAVR z plikami makefile i narażał się na frustracje i stratę czasu :)
Tak się składa, że ja też mam Win98SE... ;) A oto kawałek mojego Config.sys : SET PATH=C:\Win;C:\WIN\COMMAND;C:... i Autoexec.bat : SET PATH=%PATH%;C:\WINAVR\BIN;C:\WIN... Przyczyna równie dobrze może tkwić w nieprawidłowych wpisach w Makefile . -- Pozdrawiam, Daniel
Hej, Chcę skompilować w winavr projekt który składa sie z następujących plików: main.c a.h a.c. Plik main.c includuje plik a.h z deklaracjami, plik a.c zawiera definicje funkcji. W jaki sposób zmodyfikować standardowy makefile żeby udało się coś takiego skompilować? Pozdrawiam
Witam. Tak jak najbardziej dałem polecenie #include "lcd.h". Do tworzenie makefile używam programu w pakiecie WINAVR (Mfile). Jeżeli chodzi o jakąś modyfikacje w pliku makefile to naprawdę nie wiem o co chodzi. Pozdrawiam
Ok, mam. Z jakiegoś powodu obsługa obliczeń na liczbach float w eclipse i biblioteka math.h zajmuje aż 3kB, podczas gdy kompilacja z makefile zabiera tyko 200B. Tylko dlaczego?
Drugim na liści byłby darmowy pakiet WinAVR (ale czytałem że początkujący mają problemy przy tworzeniu w nim pliku Makefile) (?). Poprawcie mnie jeśli coś pokręciłem. To było 100 lat temu, teraz Makefile tworzy się automatycznie i w ogóle możesz o nim nic nie wiedzieć. AVR Studio + WinAVR lub Eclipse + WinAVR i tyle. 4\/3!!
To wiem. Mam funkcje odzczytu i zapisu z kursu EP. Ale chodzi mi o to jak ustawić plik makefile do external ram. Gdzie ustawić początek i jaki rozmiar? Mam plik makefile od yamppa, on też jest do odczytu cf, ale jest on napisany strasznie zawile.
najkrócej mówiąc - w pliku Makefile brakuje reguły dla all.. Przyjrzyj się dokładnie zawartości przykładowych projektów i plików Makefile tam zawartych..
Mam pytanie, co należy zmienić w makefile (a może jeszcze gdzies) aby można było pisać w C++?. Chodzi mi o przeniesienie pewnych sprawdzonych rozwiazań napisanych w C++ na platformę AVR. Jeśli używasz Makefile z pakietu WinAVR to wystarczy aby pliki projektu miały odpowiednie rozszerzenie np. main.c dla C, main.cpp dla C++ ( w pliku Makefile: TARGET...
Witam Po długiej zabawie z Bascomen przyszedł czas na "C" i oczywiście od razu problem, otóż znalazłem w sieci kurs, krok po kroku zrobiłem tak jak tam piszą, ustawiłem wszystko w Makefile, zapisałem w odpowiednim katalogu, program też zapisany do tego samego katalogu i wyskakuje mi coś takiego : http://obrazki.elektroda.pl/6063083100_1...
Witam Zaczynam sie uczyc programowac procesory avr w c. W tym celu zainstalowałem AvrStudio 4.13 +SP1+SP2 oraz WinAvr 20071221 napisałem prosty program do migania diodami i podczas kompilacji mam taki błąd i nie wiem co zrobic. Proszę o pomoc. Z góry wielkie dzięki. make: Makefile: No such file or directory make: *** No rule to make target `Makefile'....
O, ładnie przygotowane Makefile Piąta linijka: DEFS = -DF_CPU=1000000 i będzie działać( ? ;) ) zrwóć uwagę: Tutaj DEFS( z Twoją definicją) jest dodawane do CFLAGS: override CFLAGS = -g -Wall $(OPTIMIZE) -mmcu=$(MCU_TARGET) $(DEFS) A tutaj CFLAGS jest wykorzystywane w kompilacji kodu: $(PRG).elf: $(OBJ) $(CC)...
A po co? AVR Studio samo wygeneruje makefile na podstawie plikow znajdujacych sie w projekcie. Najwyrazniej twoj makefile jest skopany.
Witam wszystkich serdecznie. Od niedawna bawię się pakietem WinAvr...tak naprawdę to do zabawy jeszcze daleko .W chwili obecnej nazwał bym to raczej "ujarzmianiem" :).Ale do rzeczy. Mam pytanie odnośnie Makefile-ów. Porównuję dwa rodzje plików makefile które możemy znaleźć w folderach "examples" oraz "sample" pakietu WinAvr. Z czego wynikają różnice...
Kompilujesz w winavr? Jeżeli tak, to: 1. Czy w makefilu zmieniłeś F_CPU na 4MHz? 2. Czy nie masz ustawionego fusebita odpowiadającego za dzielenie system clocka przez 8? ad 1. Jeżeli masz wewnętrzny rezonator ustawiony na 4MHz, to w makefile zmień F_CPU = 8000000 na F_CPU = 4000000. ad 2. Odznacz fuse bit system clock devide 8 (jakoś tak się nazywa)...
Ok problem się rozwiązał i tkwił gdzie indziej, po prostu mam zainstalowanego Delphi który też podaje ścieżki dostępu w pliku autoexec.bat do własnego pliku makefile. I tym sposobem zrobił się problem bo WinAVR zaczoł używać borlandowskiego makefile. po prostu zachaszowałem ścieżki dostępu do Delphi w autoexec.bat zrestartowałem i wszystko śmiga. (...
Kurcze i jak stworzyć ten makefile ?? A w czym piszesz program WinAVR czy AVR Studio? Jeżeli ten drugi to makefile jest tworzony automatycznie.
Dzięki, znalazłem już i przetestowałem, choć trochę napsuł mi ten nowy atmelowski avrgcc nerwów głównie przez to, że makefile mi nie działał co używałem z winavr :/ (brakowało sh.exe (który przekopiowałem z winavr) i avr-size który nie działa wywoływany z makefile - a ręcznie tak :/ ). Co do optymalizacji kodu, po tym jak wyciąłem niepotrzebne funkcje...
na początku najprawdopodobniej definiujesz F_CPU trzy razy niepotrzebnie LED.c:1:1: warning: "F_CPU" redefined jak juz chcesz dla pewności definiować nie tylko w makefile to skorzystaj z #ifndef F_CPU #define F_CPU 16000000UL #endif co do sbi cbi w nowszych wersjach winavr odstąpiono do tego, i odpowiednio : #define LED_ON DDRB|=_BV(1) #define LED_OFF...
Tak. Jest opisane w dokumentacji doi avr-libc. Szablon makefile posiada również taką funkcję, ale jest nieco kulawy jeżeli chodzi o make clean (dotyczy to nie tylko bibliotek) - nie usunie biblioteki, oraz plików .o i .lst wygenerowanych ze źródeł w asemblerze i C++. Każda funkcja musi być w osobnym pliku, żeby taka biblioteka miała sens. Potem dla...
Kolego Prymulka , bądźże łaskawy jak już piszesz komunikat błędu, to go wypisywać w całości, oraz podać chociaż link do kodu, skąd go ściągnąłeś, nie ma nic bardziej wkurzającego, jak pytania do wróżek... ;) 1. Makefile (zbiór poleceń dla programu make ) jest ? 2. Na stronie Atmela większość kodu w C nie jest pod avr-gcc, i trzeba kod przerobić... 3....
Witam, Problem rozwiazany, z avr-gcc pracowalem na "starszym" laptopie z Windows Millenium. Chyba nie lubia sie nawzajem bo ten sam projekt (z tym samym makefile) kompiluje sie bez problemow na innym lapie z WinXP. Dzieki wielkie za pomoc i sugestie. Pozdr, Jobberwalker
Twój Makefile jest chyba z jakiejś starszej wersji. Ściągnij nowszą wersję WinAVR i wtedy próbuj. Oczywiście MakeFile tworzysz przy pomocy MFile. Dodatkowo _delay_ms(ms); tworzy już opóźnienie w milisekundach (tak mniej więcej) i nie trzeba tego wkładać w pętle.
Potrzebne mi to od zabawy AVR+ENC28j60. Chciałbym umieszczać niestringopodobne treści strony www bezpośrednio w kodzie c. Mając jej jako tablice w progmem łatwo mi korzystać z posiadanych funkcji. No właśnie o tym piszę. To jak traktujesz dane to kwestia zapisu w programie. Konwertowanie danych binarnych na kod c, po to, żeby potem je przekonwertować...
strasznie rozbudowany ten makefile,,, proponowalbym znalezienie jakiegos prostszego lub zastosowanie wtyczki, ktora generuje takowe samodzielnie (czyli winavr lub eclipse + wtyczka do AVRow). teraz nie mam czasu myslec nad tym makefile. 4\/3!!
Witaj. Problem Twój siedzi w makefilu nie dodałeś pozostałych plików *.c. Dodaj to w makefile kreatorze i po ptakach ewentualnie jak wiesz co i jak w makefile to będziesz wiedział gdzie to dodać . Pozdrawiam
To najpewniej błąd składni w makefile. Z tego co widzę używasz absolutnych ścieżek do plików, w makefile tego nie powinieneś robić. Ścieżki powinny być względne. Jeśli masz problem z makefile to użyj AVR Studio do jego wygenerowania.
nie widzę w programie deklaracji procesora (choć może w WinAVR to normalne i wtedy mogę sie mylić) Procesor na jakim będzie realizowany dany program deklaruje w pliku Makefile, którego WinAVR używa podczas kompilacji: PRG = zegar OBJ = zegar.o MCU_TARGET = atmega8 OPTIMIZE = -O2 Poza tym inne kody źródłowe działają normalnie: kompilują się i działają...
Kolego, czy chcesz być kustoszem? Mój post może będzie trochę niemerytoryczny, ale: - przejrzyj archiwum pod kątem problemów z USBAsp - czy za zaoszczędzone 30 zł na porządny programator (klon AVRISPMkII, różnica pomiędzy 50zł za klon, a 20zł za USBASP) jest warte straconego czasu i nerwów? - obecnie mamy avr-gcc 4.8.2, WinAVR to coś sprzed 4 lat, a...
Problem rozwiązany! Rzeczywiście problem był po stronie Makefile. Utworzyłem nowy plik za pomocą MFile z zestawu WinAVR i zadziałało idealnie. Wcześniej używałem jakiejś wersji Makefile znalezionej w necie, która też wydawała się działać, ale jak widać nie do końca. Dziękuję wszystkim za pomoc ;)
Cześć. Zainstalowałem wersję AVR Studio 4.13 oraz WinAvr20070525. Za każdym razem podczas kompilacji pokazuje mi taki błąd: Projekt nazywa się "pierwszy". ../pierwszy.c:3: fatal error: opening dependency file dep/pierwszy.o.d: No such file or directory Czy może ktoś z Was wie o co chodzi i jak temu zaradzić?? Dodam że program jest odpalany dla symulatora...
Korzystam z winavr ... ale dla pewności dodam plik makefile A czemu nie z AVR Studio? Po co się męczyć z makefile i dodatkowo wklejać tutaj - korzystaj z najnowszych narzędzi, to i kłopotów będzie mniej.
Jedyną sytuacją w jakiej mi nie chciał WinAVR kompilować programów było posiadanie na jednym komputerze WinAVR i Borland Builder'a. Jak odinstalowałem buildera to kompilował. Instalacja WinAvr sprowadza się do zainstalowania WinAvr, skopiowania sobie pliku makefile do katalogu projektu, edycji makefile'a pod katem typu procesora, częstotliwości i rodzaju...
Witam, cz ktoś może mi powiedzieć jak się kompiluje programy napisane w assemblerze pod winavr?? Konieczny jest makfile tak jak to było przy pisaniu programów w języku C?? proszę o jakieś rady. Pozdrawiam
Coś kolega przesadnie kombinuje z tym Makefile'm :) Wygenerowany kod musi być poprawny bo wielu ludzi korzysta z tego generatora :) Spróbuj przeinstalować na nowo WinAVRa może to naprawi problem :) Poniżej przykładowy działający makefile (oczywiście pliki tego typu nie nadają się do operacji CTRL+C -> CTRL+V) Pozdrawiam maly_elektronik Ten przydługi...
Usuń #define F_CPU 1000000L z kodu. To już jest w makfile i na dodatek wynosi 8000000L . Ty tylko skompilowałeś program, a nie zaprogramowałeś procesora. Szukaj w internecie Burn-O-Mat - to jest nakładka graficzna na program do wczytywania pliku hex, który jest zawarty w pakiecie WinAVR i nazywa się avrdude. Ewentualnie otwórz plik makefile i znajdź...
Po zmianie w Makefile wpisu MCU = atmega48 na MCU = atmega8 powinno działać kilka dni temu tak robiłem ale w WinAvr. Zobacz w Project->Configuration Options czy masz zaznaczone Use External Makefile
makefile winavr winavr makefile avrstudio makefile
suwakowy potencjometr stereo jakie zelazko motorola wymiana taśma
Ursus 3724: Problemy z wybierakiem i wodzikami Jak zresetować pralkę Hotpoint Ariston WMG722?