Quarze und AVR: Unterschied zwischen den Versionen

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche
Zeile 11: Zeile 11:


== Wahl der richtigen Frequenz ==
== Wahl der richtigen Frequenz ==
Vor allem als Anfänger denkt man sich, ''ich kaufe einfach mal 10mHz, das ist eine so schön gerade Zahl''. Allerdings sind diese Quarze nur in den seltensten Fällen sinnvoll. Viel sinnvoller sind [[Baudratenquarz]]e.
Vor allem als Anfänger denkt man sich, ''ich kaufe einfach mal 10mHz, das ist eine so schön gerade Zahl''. Allerdings sind diese Quarze nur in den seltensten Fällen sinnvoll. Viel sinnvoller sind [[Baudratenquarz]]e. Diese haben zwar auf den ersten Blick ziemlich "krumme" Werte, die aber zur Kommunikation über die serielle Schnittstelle viel höhere Baudraten ermöglichen.


== Anschluss an einen AVR ==
== Anschluss an einen AVR ==

Version vom 14. Mai 2012, 16:32 Uhr

Ein Quarz, eigentlich "Schwingquarz", ist ein Bauteil zu Erzeugung einer bestimmten Frequenz. Die Genauigkeit von Quarzen liegt bei 10-100ppm (1ppm = 0,0001 %) und wird somit nur noch vom Quarzoszillator überboten. Außerdem sind Quarze im Gegensatz zum internen Oszillator weniger temperaturabhängig.

Verwendung

Quarze sind in folgenden Situationen sinnvoll / notwendig:

  • Kein interner Oszillator im µC eingebaut
  • Interner Oszillator des µC zu langsam
  • Interner Oszillator des µC zu ungenau
    • Bei Verwendung des UART
    • Bei zeitkritischen Anwendungen wie z.B. eine Uhr

Wahl der richtigen Frequenz

Vor allem als Anfänger denkt man sich, ich kaufe einfach mal 10mHz, das ist eine so schön gerade Zahl. Allerdings sind diese Quarze nur in den seltensten Fällen sinnvoll. Viel sinnvoller sind Baudratenquarze. Diese haben zwar auf den ersten Blick ziemlich "krumme" Werte, die aber zur Kommunikation über die serielle Schnittstelle viel höhere Baudraten ermöglichen.

Anschluss an einen AVR

Quarz Anschluss AVR.png

Die Kapazitäten von C1 und C2 entsprechen nicht der Lastkapazität des Quarzes! Sie errechnen sich folgendermaßen:

C=2xCL-(CP+CI)

  • CP: Leiterbahnen bedingte Kapazität
  • CI: Portbedingte Kapazität
  • CL: Datenblatt des Quarzes
  • CP+CI ca. 5pF

Am Beispiel von CL = 32pF:

C = 2x32pF-5pF = 59pF

C1 und C2 sind die vom Hersteller des Kontrollers empfohlenen Werte, mit ihnen wird die Schwingsicherheit der Oszillatorschaltung gewährleistet. C1 und C2 sollten in etwa eingehalten werden (so + - 20% machen aber nichts aus).

CL, der im Datenblatt angegebene Wert, wird beim Abgleich des Quarzes während der Herstellung benutzt.

Wenn CL nicht eingehalten wird, hat das keinen Einfluss auf das Schwingen des Oszillators (solange der Faktor2 nicht überschritten wird) sondern nur auf die Frequenz, aber das in einem Maße (max. 0,01%der Frequenz), das für die meisten Mikrokontrolleranwendungen bedeutungslos ist.

Einstellung der Fuses

Hier ist besondere Vorsicht geboten. Fast immer liegt hier das Problem, wenn ein Mikrocontroller nicht mehr läuft!

Ein Quarz ist keine "External Clock", sondern ein "External Crystal/Ceramic Resonator". Siehe auch: AVR_Fuses#Taktquellen_Fuse_Einstellung

In der Begriffswelt der fuses gibt es:

<internal Oscillator> meist die Grundeinstellung bei Auslieferung

<external Crystal> für Betrieb mit angeschlossenem Quarz und C1,C2

<external Oscillator> Steuerung durch externe Taktquelle

Verwechslungsgefahr besteht meist zwischen external crystal und external oscillator