Twoje ustawienie w makefile jest całkowicie błędne niestety i albo twój makefile nie jest brany pod uwagę przy kompilacji tylko jakiś inny albo może pomylił ci się makefile z kodem programu. w makefile to musiałoby być tak: -DF_CPU 16000000 a nie tak jak ty to napisałeś wyżej :( co do fusebitów to już ci podpowiedziałem - zassaj program MkAvrCalculator...
Zrobiłem na szybko programator STK200 i niestety ale nie komunikuje się z uszkodzonymi uP ze sprawnymi 'gada'. Podłączałem również kwarc 6MHz i dwa kondensatorki (30pF - nie miałem 22pF) nic nie pomaga. Co mogło spowodować uszkodzenie ze nie mogę skomunikować się. Nie bawiłem się fusebitami jedynie co zrobiłem to zmieniłem częstotliwość procesora w...
Problem jest w konfiguracji kompilatora, na co niestety nie masz wpływu, przynajmniej na tym etapie wiedzy. Tak więc polecam docelowo zmianę na inne środowisko, jak Freddie pisze najlepiej nowsze (aktualne jest gcc 4.4.1, Ty masz 4.1.1) Możesz spróbować dodać: -fno-rtti -fno-exceptions do CXXFLAGS w Makefile ale nie potrafię zweryfikować czy pomoże,...
Przeniosę to przerwanie i tablice do plików .c. Ale wtedy w pliku głównym .c mam includować plik przerwania .c? Myślałem, że tam inkluduje się tylko pliki .h Nie musisz include'ować pliku .c, a nawet nie powinieneś. W Makefile dopisz go tylko do plików źródłowych (SRC = $(TARGET).c przerwanie.c inny_plik.c itd.) a linker odwali resztę roboty. Zostało...
http://obrazki.elektroda.pl/7570725200_1... Za niecałe 10$ razem z wysyłką nabyłem najnowszy model żółtego LCR-T4. Jego największy plus to wyświetlacz graficzny 128x64 na kontrolerze ST7565, który jest uwzględniany w wersjach rozwojowych testera i Mega328P w wersji SMD, która pozwala włączyć wszystkie dostępne opcje. Dużym plusem jest...
#define xstr(s) str(s) #define str(x) #x #define MCU_NAME xstr(__AVR_DEVICE_NAME_... Dziękuję, działa dokładnie tak, jak chciałem. Czy mógłbyś mi podpowiedzieć - lub naprowadzić na źródło - jak działa dokładnie to makro? Mam na myśli dwie pierwsze linie.
Aby zobaczyć gdzie problem : 1. Uzyj debugera 2. Pokaż skrypt linkera i startup Dodano po 47 GPIOA->BSRR |= GPIO_BSRR_BS5; To nie źródło problemu ale tak się tego rejestru nie używa. To jest write only rejestr czyli tylko samo przypisanie
Problem rozwiązany!!! Dziękuję serdecznie wszystkim za pomoc. Źródło problemu: W pliku Makefile jako output FORMAT ustawiona byla stała binary. Następnie plik wrzucałem poleceniem: avrdude -p attiny2313 -P usb -c usbasp -U lfuse:w:0xc2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m -U flash:w:main.hex Zmiana w pliku Makefile output format na ihex, rozwiązała...
Łopatologicznie: W pliku .map masz swoje źródło programu + skrypt linkera. Plik .map "mówi" gdzie dane i program,( funkcje )są umieszczone w pamięci. Czyli jeśli w skrypcie linkera masz że program zaczyna się od adresu 0x10000 i ma długość 30 kilo to tam będzie umieszczony kod programu, natomiast zmienne będą umieszczone w sekcji Data i w skrypcie linkera...
Zainstaluj AVR Studio, potem utwórz pusty projekt, dodaj wszystkie pliki, wskaż zewnętrzny makefile i zacznij od jakiegoś przykładu. 1) Które "wszystkie pliki"? 2) Można prosić o jakieś źródło z przykładem? Bo inaczej to muszę uznać to za niespecjalnie pomocną odpowiedź...
Gdzie znajdę definicje dla "BLS_START". Próbuje skompilować źródło pod WinAVR i brak tego. W dostarczonym makefile: BLS_START = 0x7E00 ... COMDEFS = -DBLS_START=$(BLS_START) Należy również pamiętać o wyjątkowych opcjach linkera np: LDFLAGS += -nostartfiles LDFLAGS += -Wl,--section-start=.text=$(BLS_STAR... Generalnie najlepiej użyć mojego...
Witam ponownie. Rzeczywiście mój błąd - wewnętrzny rezonator to max 8Mhz. Fuse Bity (z programu mkAVR Calculator: LOW: 0xE4 HIGH: 0xC0 Źródło taktowania: -Wewnętrzny oscylator 8Mhz. zmieniłem w kodzie programu #define F_CPU na 8000000 oraz w Makefile F_CPU = 8000000 Teraz wydaje się działać dobrze: 8. dioda zapala się po 125 sekundach co w przybliżeniu...
Jesteś pewien że jesteś ustawiony w katalogu w którym znajduje się make? Opcja 2 nie wiem czy nadal bład występuje ale znając zespół Mandrake nikt nie pokwapił się aby go usunąć od wersji 8. Jeżeli w procesie instalacji nie zostały wybrane pełne pakiety C to loader Python'a powodował konflikt, a dokładniej Mandrake nie pozwalał na instalację nowych...
Witam. Mam problem z kompilacją plików do pliku wynikowego hex. Dostałem źródło pewnego projektu a mianowicie pliki main.c, main.h, oraz makefile bez rozszerzenia, dostałem też plik wynikowy projekt.hex, projekt.map, projekt.cod i projekt.lst. Chcę wprowadzić kilka drobnych zmian i skompilować program i mam problem z kompilacją. Dla samego sprawdzenia...
Umieszczam kod ze strony radzia. HD44780.c [syntax=c] //--------------------------------------... // Wyświetlacz alfanumeryczny ze sterownikiem HD44780 // Sterowanie w trybie 4-bitowym bez odczytu flagi zajętości // z dowolnym przypisaniem sygnałów sterujących // Plik : HD44780.c // Mikrokontroler...
Witam, mam prośbę, czy mógłby ktoś sprawdzić mojego Makefil'a, ponieważ podczas kompilacji wrzuca mi błąd o kodzie: avr-objcopy: 'main.elf': No such file make: *** [syntax=c]//sterownik wyswietlacza #include "HD44780.h" //usawiasz tam porty sterujące, nie musisz ogarniać kodu #include <util/delay.h> #include <avr/io.h>...
Weź wszystkie podstawowe pliki (startup, skrypt linkera, tablicę wektorów, Makefile) z jednego źródła, bo jak je mieszasz to nigdy nie wiadomo co nie zadziała. 4\/3!!
Popatrz na początek swojego pliku makefile, masz tam "include'y" które działają podobnie jak w języku C. Makefile jest rozbity na kilka plików. The include directive tells make to suspend reading the current makefile and read one or more other makefiles before continuing. ([url=https://www.gnu.org/software/make/...
Skorzystaj z mojego skryptu linkera - ten który masz jest niewystarczający. W artykule nic nie pisałem o zastępowaniu skryptu linkera innym... Przy okazji: dorzucając FreeRTOS'a do projektu, w makefile'u wystarczy dodać ścieżki do źródeł systemu, czy wymagane są dodatkowe informacje dla kompilatora? Trzeba "przyczepić" 3 funkcje FreeRTOSa do 3 przerwań...
Ściągnąłem paczkę, którą załączyłeś, zaimportowałem projekt z istniejącego tam makefile (musisz mieć plugin w Microchip Studio https://microchip.my.site.com/s/article/... i kompiluje się poprawnie. Zatem problem nie leży w źródłach, a w Twoim środowisku.
Ta linia: [cc] 0 total files to be compiled. Powinna Ci dać do myślenia. Pokaż więcej plików z Twojego projektu (Makefile, źródła, skrypt linkera).
Pisałem makefile. Całe źrodła biblioteki mi się na nic nie przydadzą :wink: Poza tym, jakbyś makefile wkleił, byłoby prościej niż rozpakowywać rar-y. Zapomniałem napisać wcześniej: pliki lst to listingi z kompilacji (czyli wynik kompilacji). Jeżeli nie chcesz wnikać w to, co kompilator zrobił ze źrodłami :wink:, to nie są Ci do niczego potrzebne. Makefile...
Odznacz wszystkie CKSEL, zaznacz CKOPT, zaprogramuj i podłącz zewnętrzny rezonator kwarcowy 12MHz z kondensatorami 20pF. A F_CPU to definiuj w Makefile, a nie w źródłach: F_CPU=8000000 CFLAGS = $(COMMON) CFLAGS += -Wall -gdwarf-2 -std=gnu99 CFLAGS += -DF_CPU=$(F_CPU)UL CFLAGS += -Os -funsigned-char -funsigned-bitfields -fpack-struct...
Witam Szybko sklejone ale powinno działać Źródła FreeRtos6.1 (katalog RtosV611) + Freddie Chopin (katalog Setup) i makeFile w Tasks\task1 powinien ci się uruchomić vTask1. Jak rozpakujesz dodaj folder out i skompiluj Pozdrawiam
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.
Oprócz Cygwina jest jeszcze MinGW. To jest środowisko unixowe upakowane w jednym programie. Dlatego żeby skompilować avrdude w którymś z tych programów musiałbyś źródła przekopiować do struktury katalogowej (chociaż z tego co pamiętam, dało się zrobić tak, żeby shellowe polecenia działały normalnie w cmd, bez uruchamiania cygwina - to musisz sprawdzić,...
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!).
(at)qazpylades Wrzuć tutaj Twój projekt (źródła + makefile) okrojony tylko do kodu przedstawiającego problem.
Odwróciło to najnowsze zmiany w W800 SDK (ostatnio przenieśliśmy zawartość Makefile na platformę). Więc teraz włączone sterowniki w W800 ponownie nie mają źródła sterowników.
Pliki .c musisz dodać do projektu, bo tylko wtedy będą kompilowane - umieszczone w pliku makefile. Można je ew. prekompilować i utworzyć bibliotekę lib, którą potem dołączasz w opcjach linkera - jest to proste jeśli używasz tylko jednego procka, jeśli węcej, to należałoby utworzyć biblioteki pod każdy procek. W AS jest jeszcze jedna możliwość - dodajesz...
Cały czas jednak męczy mnie (to już czysta ciekawość), gdzie dokładnie wpisuje się polecenia chcąc skompilować jakąś aplikację? Musisz rozpakować najpierw źródła, przejść do tego katalogu i naciśnij klawisz F4 uruchomi się konsola wpisz polecenie "ls" wyświetli się zawartość katalogu. Zazwyczaj wystarczają dwie komendy "make" i "make install" ale czasem...
Wiem ale chciałem się dobrać do części bibliotek które dostarcza ST razem z ich definicjami. Na razie nie robię nic poważnego na tym procku więc nie chcę marnować czasu na ponowne odkrywanie ameryki. Chce też zobaczyć na ile CMSIS sprawdzi się dla mnie przy portowaniu aplikacji na inne cortexy. A jak zwykle szacun dla Twojego makefile - trzeci projekt,...
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.
Nie po to się korzysta z AVR studio, żeby stosować jakieś protezy. AVR Studio automatycznie wygeneruje makefile, jeśli stworzy się projekt i doda do niego właściwe pliki ze źródłami.
Źródło ma ścieżkę docelową w katalogu /Michał/.
$katalog_WinAVR$/doc/avr-libc/avr-libc-u... Tworzysz osobny plik w asemblerze (.S, nie .s) zawierający procedurę obsługi przerwania, kompilujesz do pliku .o i linkujesz z pozostałymi plikami. W dołączanym wo WinAVR szablonie Makefile jest przewidziane miejsce na wypisanie źródeł w asemblerze (ASRC = $tu wpisz nazwy plików$). Przykład,...
Ok, rozumiem. Chodziło mi o to, czy na bazie Target takie flagi sobie doda. Ale wydaje mi się, że to skutkuje tylko dodaniem pliku xml z ustawieniami, gdzie jest typ mcu, interfejs debug itp. Nie wiem czy na tej bazie zrobi cokolwiek więcej, np. doda sobie na bazie tego wskazanego typu MCU odpowiednie flagi.. sprawdzę... Natomiast teraz jeszcze się...
Nie trzeba tego robić z arduino, wszystkie nagłówki i biblioteki są tam. Musiałbyś stworzyć plik makefile, a także dostosować beken HAL. Btw, znalazłem ciekawą funkcję w źródle, może jest przenośna na openbeken (dla ds18b20/dht)? void delayMicroseconds(uint32_t us) { uint64_t m = (uint64_t)rtos_get_time_us(&... if(us){...
Zastanawia mnie jednak fakt, czy nie lepiej rzeczywiście korzystać z jakiegoś środowiska graficznego? Nie byłoby szybciej niż wpisywanie tego wszystkiego w konsoli ? Jak kto lubi. Plik Makefile: TARGET := nazwa_programu OBJECTS := źródło_1 źródło_2 źródło_3 CXXFLAGS := -O2 # linkuj program $(TARGET) : $(OBJECTS:=.o)...
p.kaczmarek2, czy mógłbyś zamieścić adres URL ze źródłami aplikacji i krótką instrukcję budowania? Następnie mogę spróbować zbudować go na moim hoście i przygotować autokompilację. Nie jest konieczne używanie akcji cmake: cmake można wywołać z pliku Makefile.
Czy ktoś może mi wtedy wytłumaczyć krok po kroku na przykładzie np. mojego linku. Ja zrobiłem tak. Otworzyłem nowy projekt w NP ,skopiowałem program z linku ,zapisałem. Następnie w makefile wszystko poustawiałem (żródło pliku z C++) ,zapisałem. Teraz w NO robię make all im i ciągle mam: make.exe: *** No rule to make target `main.elf', needed by `elf'....
Jak to niema Twojej zasługi ? Czyżby ktoś uruchomił ten układ za Ciebie ? Chyba nie. No tak, z tego punktu widzenia to faktycznie udowodniłem , że to działa :D Swoja drogą ciekawe dlaczego wersja pierwotna czyli przytoczona przez autora wątku z 2007 roku nie chce poprawnie działać z ATMega16 ? W źródłach i tamtych i tych najświeższych nie widzę rozróżnienia...
Jak używa AVRSTUDIO to on na bieżąco robi makefile taki, że kompiluje i linkuje z wszystkich źródeł dołączonych do pliku projektu..
Ludzie co wy z tą konfiguracją eclipse ? Przecież to idzie "od kopa " że tak powiem, a tu co drugi temat o tym :( Można ściągnąć przykład o Freddiego można z Yagarto można z przykładów od STM, można podejrzeć jak to jest zrobione w TrueSTUDIO (to jest przecież Eclipse i gcc). Ja wziąłem gotowy projekt z przykładów od STM, makefile od Feddiego. W Eclipse...
Plik Makefile zawiera tylko opcje, które zostały użyte podczas kompilacji źródeł programu. Jego modyfikacja nie wpływa na wsady pamięci FLASH i EEPROM. Wpływa. Zmiana optymalizacji wygeneruje różny kod, a wyłączenie optymalizacji (opcja O0) może spowodować, że program przestanie działać.
spuszczam źródła i makefile. ponieważ brzydzę się m$w napisane jest na linucha. czyste, nie udziwnione C. okropnie od łopaty, ale działa. dds programowany jest szeregowo. sygnały wysyła się 4 drutami z portu LPT. wpierwszych liniach ad9851.c opisane jak dołączyć lpt do 9851. do wad tego programu przywykłem. j
Bo masz lewy plik Makefile, nie mówiąc o prehistorycznym kompilatorze i niecodziennym środowisku (choć te dwa ostatnie nie mają wpływu na Twój problem). Kod kompilowany jest do plików obiektowych, a dopiero one do pliku wynikowego. Kasujesz pliki źródłowe, ale obiekty gdzieś zostają. Gdzie? To już pytanie do lewego pliku Makefile... http://www.elektroda.pl/rtvforum/topic13...
a mi sie wydaje ze zle ci lapie zrodlo do makefile (szuka nie w tych folderach) 1 studio bylo w WinAVR-20060421 a drugie jest WinAVR-20070525 (bo z tego co pamietam instaluje sie domyslnie w c:\ i w nazwie folderu instalacyjnego dopisuje nr wersji) albo pobaw sie ze zmiana ustawien folderu gdzie ma szukac programu/makefile albo odinstaluj wsyztsko i...
w makefile sie podaje tylko częstotliwość, nie ma rozróżnienia na to co jest źródłem sygnału zegarowego.
Widzisz. Ja też napisałem by skorzystano z 90S2313 i takie paranoje się nie pojawiają. Zarówno z kompilacji z AVR Studio, jak i ręcznie przez makefile. Loaded plugin STK500 Loaded partfile: C:\Program Files\Atmel\AVR Tools\PartDescriptionFiles\AT90S2313.xml AVR Simulator: Please wait while configuring simulator... AVR Simulator: Device has no EEPROM...
winavr makefile makefile makefile winavr makefile eclipse
priorytety operatorów atmega działa timer pomiar grzałek piekarnika
Key Automation - Brama otwiera się, ale nie zamyka: diagnostyka i rozwiązania Sarini – jak usunąć blokadę prędkości w pojeździe elektrycznym i zwiększyć szybkość jazdy