www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik welchen Takt hab ich denn nu? :/


Autor: hansi mausi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Ich habe mich grade mal gefragt was ich in meinen Programmen eigentlich 
für einen Takt habe wenn im AVR mein SUT_CKSEL auf:

Ext. Crystal/Resonator High Freq.; Start-up time: 16K CK + 64 ms

gestellt ist und ich in meinen Programmen immer

#ifndef F_CPU
#define F_CPU 8000000L
#endif

angebe?!?  Ist das ganze nun auf 8MHz oder auf 16Mhz getaktet?

Müsste ich nicht den Fuse auf 8MHz intern stellen wenn ich auch nur 8MHz 
nutzen möchte? Ich frage deswegen weil meine ganzen Progs nun mit 
"falschen" Werten laufen würden. PWM / ADC etc.

Hat einer Rat? ...

Gruß H.M.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Ist das ganze nun auf 8MHz oder auf 16Mhz getaktet?

Mit der Frequenz deines Quarzes. Aber den kennst nur du.

MfG Spess

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du auf Ext. Crystal stellst, läuft der AVr mit der Frequenz des an 
XTAL1/XTAL2 angeschlossenen Quartzes. Sinnvollerweise sollten man F_CPU 
dann ebenfalls auf diesen Wert setzen. Der Wert von F_CPU hat aber 
KEINEN Einfluss auf die Taktfrequenz. Er macht sie nur dem Programm 
bekannt.

Autor: Testfall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Wert F_CPU wird meist zur Berechnung von diversen Werten bei PWM und 
anderen zeitkritischen Routinen benutzt. Beispielsweise um 
herauszufinden, wie lange gewartet werden muss, bis eine Sekunde 
vergangen ist. (okay, das wäre lange :-)).
Was du da einträgst hat keinen einfluss auf den Takt des 
Mikrocontrollers. Andersrum wird ein Schuh draus: Du musst in dieser 
Konstanten den Takt (Den du bei den Fuses einstellst) in Hz eintragen, 
damit dein programm auch weiß, wie schnell es ist.

Autor: Testfall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, war drei Minuten zu langsam.

Autor: hansi mausi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen Dank erstmal!

Nu denke ich habe ich auch herausgefunden wieso meine Sekunden sich 
nicht wie Sekunden anfühlen ... oh man.

Werde dann mal den Takt auf intern 8MHz stellen und an ner LED testen.

btw. ich lese immer wieder das der interne Taktgeber nicht so genau sein 
soll. Sollte man eigentlich immer einen externen nehmen oder wie macht 
ihr das in Euren Schaltungen?


Gruß h.m.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Sollte man eigentlich immer einen externen nehmen oder wie macht
>ihr das in Euren Schaltungen?

Hängt von der Anwendung ab. Ob eine 500Hz PWM mit 490 oder 510 Hz läuft 
ist uninteressant. Bei einer UART sieht das schon wieder anders aus. 
Zumindest wenn dein PC auch das empfangen soll, was dein AVR sendet. Der 
andere Aspekt ist die Frequenz. Bei den internen Oszillatoren ist im 
allg. bei 8MHz Ende der Fahnenstange (Ausnahme z.B. für Timer, AVRs mit 
PLL). Wenn du mehr brauchst, ist externer Takt angesagt.

MfG Spess

Autor: Marcus B. (raketenfred)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Externen Quarz nimmt man meistens für:

-UART
-Andere Datenübertragung
-Uhrzeit
-Genaues Warten(also auch wieder eine Uhr)

erhebt keinen Anspruch auf vollständigkeit

aber man kann grob sagen:

Wenn man keinen externen Quarz braucht, dann lässt man ihn weg

Autor: hansi mausi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die Antworten!

nun ist einiges klarer.


gruß H.M.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.