Archiv verlassen und diese Seite im Standarddesign anzeigen : Quarz vs. Interner Oszillator
Barthimaeus
01.01.2008, 15:04
Da ich im Bereich Elektronik noch ziemlich weit am Anfang stehe habe ich, um mir das Leben zu erleichtern, um Bauteile (zwecks Übersicht) zu sparen und um mir unbekannte Elemente aus der Schaltung rauszuhalten bis jetzt immer den Internen Oszillator, den die meisten AVRs besitzen genutzt - und das ging auch immer wunderbar. Nur langsam stelle ich mir die Frage, mit welchem Sinn sooo viele Leute in ihre Schaltungen einen Quarz einbauen, wenn der interne Oszillator (auch ein Quarz?) es doch bei mir immer wunderbar tut - Gibt es da noch irgendeinen Vorteil, den ich übersehen habe, abgesehen davon, dass man genauere Messungen vornehmen kann? Wie ihr seht bin ich in diesem Bereich wirklich ein Neuling und Schwingkreise/Schwingungen in der Elektronik sind mir noch eine Neuheit, die ich mir bis jetzt nur begrentzt erklären kann. Ich leide vermutlich wie viele andere an der Halbbildung, die man im Physikunterricht abbekommt, oder?
Hallo Barthimaeus!
Als PIC benutzer kenne ich zwar die AVRs nicht detailiert, versuche aber trotzdem ein paar Gründe für Quartzverwendung nennen:
- genaue Uhr
- serielle Komunikation z.B. mit PC mit genau bestimmter Baudrate
So weit ich weiss, der interne Oszillator ist RC mit geringer Temperaturstabilität.
MfG
Barthimaeus
01.01.2008, 19:36
Aber für Schaltungen, deren Anforderungen nicht sehr hoch sind (zb Kommunikation mit <=9600 Baud (funktioniert mit inernem ozi. wunderbar)) ist ein Quarz also noch überflüssig?
Der Quarz ist dann sinnvoll, wenn mit genauen Timings gearbeitet werden muss. Bei Frequenzen größer oder != 8MHz bzw 1MHz geht es ohnehin nicht anders.
Besserwessi
01.01.2008, 22:44
Für die UART ist ein Quarz wirklich sinnvoll. Der interne Oszillator geht gerade so, es sind dann aber nicht mehr viel Reserven (z.B. für hohe Datenraten) drin.
Ein Quarz hat aber auch Nachteile: die sind zum Teil stoßempfindlich und brauchen zum Anschwingen (beim Einschalten oder nach Tiefschlaf) eine gewisse Zeit (ein paar ms). Zum Teil wird der Quarz auch nur auf der Platine vorgesehen aber gar nicht bestückt.
Barthimaeus
01.01.2008, 22:59
Um einen Quarz benutzen zu können benötigt man dann aber noch 2 Kondensatoren, wie dem Wiki zu entnehmen ist. Woher weiss ich, wie diese zu Dimensionieren sind? Wenn ich zum Beispiel einen 8Mhz Quarz als Taktgeber für einen attiny13 benutzen wollte - was für Kondensatoren wären da nötig? Und wo müsste der Quarz überhaupt angeschlossen werden? Oder kann man keinen Quartz benutzen wenn es keine XTAL1/2 Pins gibt?
Noch mal zusammengefasst.
Interner RC-Oszillator (KEIN Quarz):
(1) nicht genau (eher ungenau, fertigungsabhängig,, kann aber pro Stück kalibriert werden durch Einspeichern in eine non-volatile Zelle. Hat ATMEL auch eine Zeit lang gemacht! Vielleicht immer noch ? Weiß nicht.. Bin zu lange raus aus der AVR Szene.. Sonst macht man das einfach selbst!)
(2) Aber: RC Oszillatoren sind STARK Temperatur abhängig: Zwischen Kühlschrank und in der Sonne liegen 10-20% Abweichungen.
(3) Bei 8 MHz ist Schluss!
Quartz:
(4) Einige ATmegas laufen mit bis zu 20MHz.. diese doppelte Geschwindigkeit mag nützlich sein.
(5) Genauigkeit um 0,01% Das ist nicht soviel wie man denkt. Einfache "Uhren" gehen mehrere Sekunden falsch am Tag.
(6) Die Beschaltung mit 2 (etwa) 22pF Kondensatoren ist bei den AVRs notwendig! Durch einen Trimmer kann man hiermit die Frequenz dann auch noch ganz präzise einstellen!
Keramikschwinger:
(7) Eine Alternative sind Keramikschwinger (3 Beinchen): Das mittlere wird an Ground gelegt. Keine weiteren Kondensatoren notwendig! Etwas preiswerter als Quarze aber nicht so ganz genau (eher 0,1%). Eigentlich die ideale Kompromisslösung.
was für Kondensatoren wären da nötig?
In den Schaltungen die ich bisher gesehen habe werden für die beiden Kondensatoren am Quarz 22pF verwendet. Funktioniert auf meinen Boards auch einwandfrei.
Und wo müsste der Quarz überhaupt angeschlossen werden? Oder kann man keinen Quartz benutzen wenn es keine XTAL1/2 Pins gibt?
Ob man an deinen ATTiny13 einen externen Quarz anschliessen kann, weiss ich auch nicht.
Da du die 2 Pins für den Quarz nicht gleichzeitig für etwas anderes verwenden kannst, würden beim Tiny13 auch nicht mehr besonders viele Pins zur Nutzung übrig bleiben.
Das Argument, dass man mit Quarz eine höhere Übertragungsrate für die serielle Schnittstelle erreicht, zählt beim Tiny auch nur eingeschränkt, da er die ja hardwareseitig auch nicht hat.
Die serielle Schnittstelle kannst du natürlich softwaremässig implementieren, aber wenn du den dafür erforderlichen Speicher, zwei Pins für den Quarz und 2 Pins für RX/TX abziehst, bleiben beim ATTiny13 nicht mehr viele freie Resourcen übrig.
Ich habe aus meiner Unwissenheit über Vor- und Nachteile eine externen Quarzes anfangs genau die entgegengesetzte Konsequenz gezogen wie du und ihn einfach immer auf jede Schaltung draufgemacht.
Bei m einen letzten beiden Schaltungen mit ATMega8 wollte ich mal möglichst wenige externe Bauteile verwenden und habe den Quarz weggelassen.
Die serielle Übertragung mit 19200Baud und das serielle Programmieren über Bootloader funktionieren bei beiden Schaltungen auch mit dem internen 8MHz Oszillator ohne Probleme.
Eine schnellere Übertragungsrate als 19200 habe ich bisher weder mit noch ohne Quarz probiert.
welche Kondensatoren benötigt werden findest Du im Datenblatt des jeweiligen AVRs beschrieben.
Barthimaeus
02.01.2008, 19:58
Muss man den AVR irgendwie umstellen, um einen Quarz benutzen zu können, oder nimmt der einen extrenen Takt automatisch an?
Besserwessi
02.01.2008, 21:56
Zum umstellen der Taktquelle gibt es Fuse bits (außer eventuell bei einigen antiken Typen, die immer eine Quarz brauchten). Dabei vorsichtig sein, denn bei falscher Einstellung kann die ISP Programmierung abstellen. Wenn man eine nicht funktionierende Taktquelle einstellt kann man auch nicht mehr per ISP programieren.
Ein besonders beliebter Fehler ist es external Oscillator oscillator einzustellen, dann braucht man einen externen Takt (nicht nur Quarz) mit Logicpegel.
Die Calibrierung des oszillators scheint bei den neueren Typen schlechter geworden zu sein. Dafür ist die Temperaturabhängigkeit nicht mehr so groß wie früher.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.