Anfänger schrieb:
> Wenn ich aber jetzt den Teiler von 1/1024 auf 1/8 ändere blinkt die Led
> in der gleichen Frequenz???
> Ich habe nur CS01 gesetzt anstatt CS02 und CS00.
Das ist ein deutlicher Hinweis darauf, dass in deinem
Programm-Erstellungs bzw. Brennprozess noch irgendwas nicht richtig
funktioniert. Dein Programm landet anscheinend nicht zuverlässig auf dem
µC.
> Und noch eine Frage. Muss dieses überhaupt im Programm stehen? Weil wenn
> ich es weglasse funktionierts genauso.
>
>
ein define ist nur eine Anweisung an den Präprozessor (ein Teil des
Compilers) eine Textersetzung vorzunehmen. Mehr steckt da nicht
dahinter.
Willst du dir zb basierend auf der Takfrequenz etwas ausrechnen, zb
1 | #define F_CPU 8e6
|
2 |
|
3 | ....
|
4 |
|
5 | i = F_CPU / 8;
|
6 | j = F_CPU / 16;
|
so dass du nur eine Stelle hast, an der du bei einer veränderten
Taktfrequenz den Zahlenwert verändern musst, dann brauchst du es. Denn
der Präprozesser macht aus obigen ganz einfach
1 | i = 8e6 / 8;
|
2 | j = 8e6 / 16;
|
ehe er dann dieses Zwischenergebnis zum eigentlichen Compiler
weiterreicht.
Daher: Basiert in deinem Programm irgendwas auf einem Makro namen F_CPU?
Nein?
Dann brauchst du es auch nicht.