ATNEL tech-forum
https://forum.atnel.pl/

długi czas kopliacji programu w C eclipse mars
https://forum.atnel.pl/topic14519.html
Strona 1 z 1

Autor:  scoobi [ 13 lut 2016, o 21:04 ]
Tytuł:  długi czas kopliacji programu w C eclipse mars

Witam wszystkich forumowiczów .

Mam następujący problem, podczas kompilacji najprostszych programów typu miganie diodą z BB muszę czekać aż eclipse mars ( wersja 4.5.0) przetrawi wszystko w czasie 10-15 sekund.Jeżeli nie zmienie żadnej zmiennej i przeprowadzę ponowną kompilacje czas jest ten już akceptowalny i wynosi około 2 sekundy.jest to straszenie denerwujące czasami trzeba czekać aż 30 sekund. System Win7 procesor I5 dysk ssd podczas kompilacji nie widać żeby procesor był nadmiernie obciążony.czy ktoś ma pomysł ja to przyśpieszyć?

Autor:  Bartek123 [ 13 lut 2016, o 21:12 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Nie wiem jak to przyśpieszyć, ale dlatego 2s za drugim razem bo projekt się nie kompiluje. Jak raz jest skompilowany projekt i w projekcie nic nie zmienimy to za drugim razem już się program nie skompiluje.

Autor:  mirekk36 [ 13 lut 2016, o 21:20 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Wątpię żeby to była wina Eclipsa - on nie ma za dużo wspólnego z czasem kompilacji ...

chcesz sprawdzić ?

To pobierz sobie program MkBootloader, wejdź w okno kompilacji BLS i kliknij nawet na domyślnych ustawieniach klawisz do kompilacji ... i sprawdź / porównaj czas tej kompilacji

jeśli będzie tak samo długo to poszukaj problemu u siebie w windowsie ... sprawdź na innym komputerze albo na maszynie wirtualnej - wtedy możesz się zdziwić ....

Tym bardziej nie powinieneś mieć problemów jeśli masz do tego jeszcze dysk SSD ... ale już nie takie cuda widziałem u użytkowników tzn w sensie, że działy się różne cuda/cyrki .... zaś po wygenerowaniu windowsa na czysto jak ręką odjął wszystko się kończyło te cuda cyrki

Autor:  scoobi [ 13 lut 2016, o 21:32 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

w tak zwanym "miedzy czasie" odłączyłem się od internetu i wyłączyłem antywirusa. kompilacja "miganie diodą" po zmianie wartości _delay_ms() zajmuje w eclipse 5s,w BLS mniej więcej tyle samo więc jest lepiej.szukam dalej ,dzięki za porady

Autor:  _/\_ [ 13 lut 2016, o 22:51 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Na zajęciach z programowania uczono mnie aby program dzielić na moduły a nie trzymać wszystkie w jednym pliku. To skraca czas kompilacji.

Autor:  mirekk36 [ 13 lut 2016, o 23:36 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

_/\_ napisał(a):
Na zajęciach z programowania uczono mnie aby program dzielić na moduły a nie trzymać wszystkie w jednym pliku. To skraca czas kompilacji.

To dobrze cię uczono ale tu mowa o miganiu diodą LED więc tego nie ma nawet jak podzielić na moduły

Autor:  _/\_ [ 13 lut 2016, o 23:57 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Ok, dzięki za informację. Od jakiego poziomu powinno się program dzielić na moduły? Pytam praktyków bo na uczelni wiadomo.. jest różnica między teorią a praktyką. ;)

Autor:  mirekk36 [ 14 lut 2016, o 00:05 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

_/_ napisał(a):
Od jakiego poziomu powinno się program dzielić na moduły?

Wiesz - na ten temat to książkę można napisać. To nie jest tak jak z ciastkiem i tortem, tzn że ciastko zjada się w całości a tort kroi się najpierw na kawałki ... Wszystko zależy od konkretnego projektu, który zawsze warto dzielić na logiczne moduły ... tyle w skrócie ... a więcej ? ... hmm dużo więcej ? ... znam nawet taką książkę, która dość sporo o tym i nie tylko o tym mówi - polecam gorąco:

http://atnel.pl/mikrokontrolery-avr-jezyk-c.html

;)

Autor:  _/\_ [ 14 lut 2016, o 15:44 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Może rzeczywiście odpowiedź jest zbyt obszerna... Już zapytałem jednego z programistów i on opisał (ogólnie) kilka problemów.
W Pańskiej książce którą posiadam i już jestem po pierwszej lekturze (II wydanie, twarda oprawa), od strony 129 do 135 (rozdział 3.5.6: Funkcje w różnych plikach projektu), nie porusza Pan zagadnień o które pytałem. Owszem jest tam mechanizm podziału na moduły bardzo czytelnie przedstawiony. Pewnie przy 2 czytaniu i tu będę miał kilka pytań. Za chwilę (za pół roku) na uczelni będę miał zagadnienia takie jak:
- zależności cykliczne modułów - sposoby podziału
- deklaracje zapowiadające - usunięcie konieczności włączania nagłówka
- warstwowość - połączenia pomiędzy warstwami

Gdzie znajdę te zagadnienia dobrze opisane? Czy jest jakaś książka z którą mogę się zapoznać?

Autor:  black_currant [ 3 paź 2016, o 13:41 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Wita, żeby nie tworzyć nowych wątków postanowiłem się podłączyć.

Mój problem polega na tym, iż podczas wgrywania programu do Atmegi128 za pomocą Eclipsy oraz programatora AVR ATB USBASP 4.1 czas jest dość długi, aktualnie dochodzi do 25 sekund. Czy istnieje możliwość konfiguracji programowej szybkości wgrywania programu?

Wcześniej na takiej samej konfiguracji sprzętowej i programowej wgrywałem na Atmege8 i cały proces przebiegał błyskawicznie, problemy zaczęły się po zmianie mikrokontrolera.

Atmege8 miałem zabudowaną na płytce stykowej a 128 mam w module uruchomieniowym.

czy spotkaliście się kiedyś z takim długim czasem wgrywania programu? Dodam że nie jest on obszerny.

Poniżej podsumowanie z consoli:

"
Launching C:\Program Files (x86)\Atmel\AVR Tools\AVR Toolchain\bin\avrdude -pm128 -cusbasp -B 375 -V -Uflash:w:makieta.hex:a
Output:

avrdude: set SCK frequency to 2000 Hz
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.06s

avrdude: Device signature = 0x1e9702
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: set SCK frequency to 2000 Hz
avrdude: reading input file "makieta.hex"
avrdude: input file makieta.hex auto detected as Intel Hex
avrdude: writing flash (1240 bytes):

Writing | ################################################## | 100% 25.19s

avrdude: 1240 bytes of flash written

avrdude done. Thank you.

avrdude finished
"

Autor:  mirekk36 [ 3 paź 2016, o 13:47 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Cytuj:
Launching C:\Program Files (x86)\Atmel\AVR Tools\AVR Toolchain\bin\avrdude -pm128 -cusbasp -B 375 -V -Uflash:w:makieta.hex:a

No jak ty wgrywasz z parameterem

-B 375 to ja się nie dziwię

Autor:  HomoChemicus [ 3 paź 2016, o 13:50 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Masz ustawiony parametr -B 375. Zmień na -B 8 i będzie dobrze. Znajdziesz to w properties->AVR->AVRdude->programmer->usbasp(edit)

Autor:  mirekk36 [ 3 paź 2016, o 14:32 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

HomoChemicus napisał(a):
Masz ustawiony parametr -B 375. Zmień na -B 8 i będzie dobrze.

Nie będzie dobrze - szczególnie dla pełnego wsadu do m128 - będzie nadal masakra

albo bez parametru -B albo .... być może sobie autor nie zmienił taktowania z 1MHz na większe więc musi się bujać z -B 8

Autor:  SunRiver [ 3 paź 2016, o 14:47 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Nie ważne czy zmieni czy nie zmieni i na jaki kwarc taktowanie , będzie szybciej , ale bez rewelacji
i pełny wsad dla m128 to dalej będzie dłuuuuugo , z prostej przyczyny , powoduje to proteza Programowe USB w USBasp .. szybkość zapisu to max 5kHz wiec czym tu się przejmować ,
jest powolny , ale niezawodny zwłaszcza w wykonaniu mirka ... niemniej nie jest to i nie będzie rakieta.
zresztą ... czy wam się tak śpieszy ze te kilka / kilkadziesiąt sek to taki problem ??

w przypadku arm .. kompilowałem softa do STPC niecały 1MB ... trwało to aż 11Min , a wgrywanie
przez J-Linka przy 12MHz zajęło 35sek ... i co ?? trzeba poczekać :)

Autor:  black_currant [ 4 paź 2016, o 06:21 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Sam czas nie jest jakiś tragiczny, ale często wgrywam program, po małych zmianach i w skali makro robi się z tego dość spore opóźnienie.

Tą wartość (-B 375) skopiowałem z mkAVR calculatora, ponieważ nie mogłem się z kontrolerem połączyć, nie zastanowiłem się nad jej postacią.

Dzięki za rade HomoChemicus, podmieniłem parametr według wskazówek i efekt jest natychmiastowy. Czas wgrania 1.27s.

Tak przy okazji za co odpowiada ten parametr? Wcześniej zmieniałem wewnętrzny oscylator ale efektów szybsze wgrywania wsadu nie było.

Autor:  Nefarious19 [ 4 paź 2016, o 06:34 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Za spowolnienie sygnału SCK na magistrali SPI podczas wgrywania wsadu.

Autor:  mirekk36 [ 4 paź 2016, o 08:32 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

black_currant napisał(a):
Tak przy okazji za co odpowiada ten parametr? Wcześniej zmieniałem wewnętrzny oscylator ale efektów szybsze wgrywania wsadu nie było.

A może by tak jakieś poradniki na temat MkAvrCalculaor i Eclipse obejrzeć ? żeby zrozumieć a wtedy zapamiętać ?

polecam ci obejrzeć:

https://www.youtube.com/watch?v=_jmj4TPdMVE
https://www.youtube.com/watch?v=AroKPav3On4
https://www.youtube.com/watch?v=d48tELLVeyg

bo tu jest o tym parametrze również ale także albo PRZEDE WSZYSTKIM tutaj:

http://atnel.pl/mkavrcalculator.html

nie wspomnę już o zupełnie darmowym programie AVPlayer ;)

http://atnel.pl/atnel-video-player.html

Autor:  black_currant [ 4 paź 2016, o 09:13 ]
Tytuł:  Re: długi czas kopliacji programu w C eclipse mars

Co do poradników opisujących Eclipse, to oglądałem, nawet kilkakrotnie, wiele razy pomogły. Prawdopodobnie niektóry szczegóły uleciały mi z pamięci.

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/