ATNEL tech-forum https://forum.atnel.pl/ |
|
Makefile https://forum.atnel.pl/topic21083.html |
Strona 1 z 1 |
Autor: | tokirium [ 4 sie 2018, o 11:28 ] |
Tytuł: | Makefile |
Czy ten makefile jest dobry? Chcę zaprogramować attiny2313, za pomocę programu Geany na Linuxie i taki znalazłem wzór makefile. Kompilacja przebiega prawidłowo, ale przy programowaniu procka otrzymuję komunikat: język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Takie pliki wygenerowało: |
Autor: | krish [ 4 sie 2018, o 11:39 ] |
Tytuł: | Re: Makefile |
Zalecam oszczędność (Prezes PKO ), lub większy kontroler. |
Autor: | tokirium [ 4 sie 2018, o 15:51 ] |
Tytuł: | Re: Makefile |
Tylko że to prosty program do migania diodą z tej strony https://starter-kit.nettigo.pl/2012/04/ ... -opornych/ Chyba niepotrzebnie tyle plików mi wygenerował, bo eepromu przecież nie programuję, może dlatego tyle miejsca zajmuje. |
Autor: | krish [ 4 sie 2018, o 16:12 ] |
Tytuł: | Re: Makefile |
Ten make dodaje chyba wszystko co może. Proponuję zainstalować w Twoim Linuksie- Eclipse'a, tam z poziomu IDE będzie prościej zapanować nad kompilacją. Opanować make też można, ale to już "wyższy stopień wtajemniczenia", na początek niepotrzebny. |
Autor: | tokirium [ 4 sie 2018, o 17:28 ] |
Tytuł: | Re: Makefile |
Myślałem o tym, ale widziałem opinie, że Eclipse jest zasobożerne i może zamulać na moim komputerze. AVR8 Burn-O-Mat u mnie dość długo się uruchamia, więc nawet nie próbowałem instalować Eclipse, wolę coś lżejszego. Kiedyś komendy odpalałem z ręcznie z konsoli, ale wolałbym trochę zautomatyzować to, żeby wystarczyło tylko raz makefile dostosować do danego projektu i w wygodny sposób kompilować i programować jednym kliknięciem. Tylko właśnie te przykładowe makefile to takie kombajny są, a prostszych gdzie wystarczy zdefiniować podstawowe parametry kompilacji i programatora nie znalazłem. |
Autor: | micky [ 4 sie 2018, o 18:10 ] |
Tytuł: | Re: Makefile |
A co Ty masz za komputer, że długo Ci się odpalają softy? Jak nie chcesz lub nie możesz go zmienić to powinno wystarczyć odpalanie ręcznie kompilatora a na koniec linkera. |
Autor: | tokirium [ 4 sie 2018, o 19:08 ] |
Tytuł: | Re: Makefile |
Na starszym stacjonarnym robię, to nie kilkurdzeniowy sprzęt z kilka gb ramu, więc niektóre bardziej rozbudowane programy zamulają, ale do prostych zadań wystarcza. BurnOMat jest w Javie napisany i pewnie dlatego pojawia się po nieco dłuższej chwili, bo inne programy działają szybciej. Skoro na Eclipse sporo osób narzekało, że im wolno chodzi, to u mnie na pewno nie będzie lepiej. Trudno, coś będę kombinować z opcjami w Geany, ale wolałem to do makefile wrzucić. Edit: Pewnie głupie pytanie, ale jak definiuje się typ mikrokontrolera w avr-gcc i avrdude? Z tego co wiem, to w parametrach do avr-gcc podaje się -mmcu=attiny2313, a do polecenia avrdude -p t2313. Ale tamten makefile do obu poleceń wstawia attiny2313. Avrdude rozróżnia obie formy? |
Autor: | krish [ 4 sie 2018, o 21:05 ] |
Tytuł: | Re: Makefile |
Puść z konsoli: avrdude -pattiny2313 -P usb -c usbasp -n lub avrdude -pt2313 -P usb -c usbasp -n to sprawdzisz. Jak masz zabytkowy PC to zobacz czy np. to nie będzie odpowiednie: https://www.forbot.pl/forum/topics20/programowanie-programowanie-avr-w-linux-vt3667.htm http://home.roboticlab.eu/en/examples/setup/kontrollerlab |
Autor: | micky [ 4 sie 2018, o 21:07 ] |
Tytuł: | Re: Makefile |
Bawisz się linuxem a nie spróbujesz tego co Ci podpowiedziałem. Trudno, podrzucam przykład jak Mirkowy MkClipse (for Windows) kompiluje jeden z moich sofcików i nie potrzebujesz żadnego makefile'a: avr-gcc -Wall -Os -Wstrict-aliasing=1 -fpack-struct -fshort-enums -ffunction-sections -fdata-sections -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32a -DF_CPU=11059200UL -MMD -MP -MF"Release/MK_USART/mkuart.d" -MT"Release/MK_USART/mkuart.o" -c -o "Release/MK_USART/mkuart.o" "MK_USART/mkuart.c"" avr-gcc -Wall -Os -Wstrict-aliasing=1 -fpack-struct -fshort-enums -ffunction-sections -fdata-sections -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32a -DF_CPU=11059200UL -MMD -MP -MF"Release/mk_build.d" -MT"Release/mk_build.o" -c -o "Release/mk_build.o" "mk_build.c"" avr-gcc -Wall -Os -Wstrict-aliasing=1 -fpack-struct -fshort-enums -ffunction-sections -fdata-sections -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32a -DF_CPU=11059200UL -MMD -MP -MF"Release/main.d" -MT"Release/main.o" -c -o "Release/main.o" "main.c"" avr-gcc -Wall -Os -Wstrict-aliasing=1 -fpack-struct -fshort-enums -ffunction-sections -fdata-sections -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega32a -DF_CPU=11059200UL -MMD -MP -MF"Release/LCD/lcd44780.d" -MT"Release/LCD/lcd44780.o" -c -o "Release/LCD/lcd44780.o" "LCD/lcd44780.c"" avr-gcc -Wl,-Map,Release/DEM401_tester.map -Wl,--gc-sections -mmcu=atmega32a -o "Release/DEM401_tester.elf" Release/LCD/lcd44780.o Release/MK_USART/mkuart.o Release/main.o Release/mk_build.o avr-objdump -h -S Release/DEM401_tester.elf > "Release/DEM401_tester.lss" avr-objcopy -R .eeprom -R .fuse -R .lock -R .signature -O ihex Release/DEM401_tester.elf "Release/DEM401_tester.hex" avr-objcopy -R .eeprom -R .fuse -R .lock -R .signature -O binary Release/DEM401_tester.elf "Release/DEM401_tester.bin" avr-objcopy -j .eeprom --no-change-warnings --change-section-lma .eeprom=0 -O ihex Release/DEM401_tester.elf "Release/DEM401_tester.eep" avr-size --format=avr --mcu=atmega32a Release/DEM401_tester.elf |
Autor: | danny [ 4 sie 2018, o 22:44 ] |
Tytuł: | Re: Makefile |
krish napisał(a): Puść z konsoli: avrdude -pattiny2313 -P usb -c usbasp -n lub avrdude -pt2313 -P usb -c usbasp -n to sprawdzisz. Jak masz zabytkowy PC to zobacz czy np. to nie będzie odpowiednie: https://www.forbot.pl/forum/topics20/programowanie-programowanie-avr-w-linux-vt3667.htm http://home.roboticlab.eu/en/examples/setup/kontrollerlab Pod Linuksem bez parametru - P usb Tam porty są inaczej nazywane. Wystarczy w tym przypadku parametr -c usbasp |
Autor: | tokirium [ 5 sie 2018, o 11:13 ] |
Tytuł: | Re: Makefile |
micky napisał(a): Bawisz się linuxem a nie spróbujesz tego co Ci podpowiedziałem. To to wiem, że w konsoli wystarczy odpalić Trudno, podrzucam przykład jak Mirkowy MkClipse (for Windows) kompiluje jeden z moich sofcików i nie potrzebujesz żadnego makefile'a: język c Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod. kalani napisał(a): Widać, że programowanie idzie prawidłowo ale wsad się nie mieści. Na początek powinieneś w sekcji opisanej jako "Library Options" pozbyć się niepotrzebnych w tym przypadku bibliotek: libm i libprinf. To powinno odchudzić kod. Spróbuję, ale pewnie i tak nie odchudzi tak bardzo.
Zakomentuj to co jest i utwórz symbole bez zawartości. W razie potrzeby skorzystania z printfów z floatami będzie można to łatwo odkomentować. |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |