Cytuj:
A dlaczego nie ustawiać wartości F_CPU? W książce Przygoda z elektroniką
O Matko Boska - kolejna książka, która pekluje ..... bzdury .... No i weź tu człowieku staraj się nauczyć początkujących

sorki to nie do ciebie Pilarek ale ręce opadają .... bo już wcześniej też ukazała się taka jednak książka która nie tylko takie dziwolągi pokazywała

ale już ci tłumaczę , chociaż w swojej książce
http://atnel.pl/mikrokontrolery-avr-jezyk-c.htmldokładnie to opisałem dlaczego nie .... ale pewnie jej nie masz więc niech będzie - jeszcze raz
Po pierwsze w jakim środowisku piszesz programy ? W kocim Atmel Studio czy w ECLIPSE ?
Jeśli w ECLIPSE - to prędkość taktowania ustawia się łatwo i wygodnie we właściwościach projektu tak jak to było również w starej wersji AVR Studio 4,xx .....
i co dalej się z tym dzieje ? otóż stała F_CPU trafia wtedy pięknie automatycznie do pliku sterującego kompilacją "makefile" a to z kolei powoduje że MASZ JĄ DOSTĘPNĄ w KAŻDYM rozumiesz w KAŻDYM pliku swojego projektu i co WAŻNE - nawet jak zmienisz we właściwościach projektu sobie taktowanie to pomyśl - NAGLE we wszystkich plikach projektu dzięki makefile masz także dostępną tą stałą
a teraz sobie pomyśl jakie pułapki kocie czyhają na początkujących, którzy słuchają takich KIEPSKICH porad aby wrzucać to do kodu programu.
Skoro masz w kodzie a stworzysz kolejny plik projektu to co ? to znowu napiszesz kolejny raz #define F_CPU xxxxx, i "super", potem kolejny plik i kolejny raz ... itd
aż w końcu zachce ci się w projekcie zawierającym już 20 plików zmienić taktowanie - i co będziesz jak opętany latał po każdym pliku i zamieniał
#define F_CPU xxxxx na
#define F_CPU yyyyy
?????
a pomyśl sobie co będzie jak w którymś zapomnisz albo w kilku zapomnisz ??? No to masz za chwilę ZONKI, tu coś działa tak jak chciałeś w innych miejscach programu nie za bardzo i robi się kocia DEGRĘGOLADA .....
oczywiście takie "super" książki albo inni ŚPECE podpowiedzą ci żeby jeszcze inne sztuczki z tym stosować - ale to MEGA BZDURA
PO CO - SKORO RAZ USTAWIASZ WE WŁAŚCIWOŚCIACH PROJEKTU i masz w CAŁYM projekcie - czy to nie WYGODNE - ktoś kto wymyślał C pomyślał o mega wygodzie a nie żeby mając BMW jeździć przyczepką zaprzęgniętą w osła

---------------
No dobra ale pewnie może do tego wszystkiego jeszcze piszesz w Atmel Studio zamiast Eclipse - i pewnie jakiś fachowiec w książce wyjaśnił ci że tam nie ma już ustawiania we właściwościach projektu takiej opcji i dlatego trzeba wklepywać w kodzie i to na samym początku - NO sorki ale to kolejna GŁUPOTA aż boli kora mózgowa.
Bo w kocim Atmel Studio - autorzy nowszej wersji chcąc zemścić się chyba na programistach C, postanowili o wiele bardziej utrudnić i schowali tą opcję ustawień GŁĘBIEJ - czyli do ustawień samego TOOLCHAINA - tzn w Eclipse też to masz - ale WYGODNE ECLIPSE .... ułatwia życie za to w Atmel Studio MUSISZ tam się dogrzebywać i wtedy dopiero jak ustawisz to także będzie to w makefile i dostępne we wszystkich plikach projektu
a więc też się da ???
no to teraz sam powiedz - po co w kodzie skoro naraża cię to jako programistę a szczególnie początkującego na to że będziesz sobie włosy z głowy rwał że co jakiś czas coś ci nie działa a to właśnie przez głupie dawanie w kodzie
#define F_CPU - MASAKRA
------------------------ [ Dodano po: 11 minutach ]Pilarek napisał(a):
A dlaczego nie ustawiać wartości F_CPU? W książce Przygoda z elektroniką jest napisane,
hehehe już widzę - dlaczego ta książka znowu powiela bzdury na temat #define F_CPU , żeby to w kodzie robić, bo już taka była wcześniej. Sprawdziłem - okazało się że to ten sam autor. Szkoda, że w międzyczasie nie poprawił swojego podejścia ....