Ich habe einen ATmega8.
Brauchen die inzwischen immer noch einen externen Quarz, oder sind die
internen Oszillatoren präzise genug geworden? Und wo steht im Datasheet,
wie hoch der interne Oszillator taktet? Ich lese da nur 0-16MHz und dem
Verbrauch bei 4MHz.
Und: kann ich dann auch einen 20MHz Quarz anschließen oder eben nur
einen bis max. 16MHz?
Ich finde nichts aktuelles und in dem Bereich tut sich ja eigentlich
ständig etwas.
Ich würde mich über eine Antwort freuen. ^^
Fragezeichen schrieb:> Brauchen die inzwischen immer noch einen externen Quarz, oder sind die> internen Oszillatoren präzise genug geworden?
Der interne Oszillator ist ein R-C Oszillator und mit 3% bei 25°C
angegeben. Da ändert sich auch in Zukunft nichts, wenn die Genauigkeit
nicht reicht, dann brauchst du einen Quarz oder Quarzoszillator.
> Und wo steht im Datasheet, wie hoch der interne Oszillator taktet?
Unter "System Clock and Clock Options" und dann "Calibrated Internal RC
Oscillator". 8 MHz kann er maximal.
> Und: kann ich dann auch einen 20MHz Quarz anschließen oder eben nur> einen bis max. 16MHz?
Der Atmega8 ist bis 16 MHz spezifiziert ... 20 MHz kann er also nicht.
Fragezeichen schrieb:> Ich habe einen ATmega8.> Brauchen die inzwischen immer noch einen externen Quarz, oder sind die> internen Oszillatoren präzise genug geworden?
Die haben noch nie einen Quarz gebraucht. Die hatten schon immer einen
internen Oszillator. Was du mit "präzise genug" meinst, hast du leider
vergessen zu erwähnen.
> Und wo steht im Datasheet, wie hoch der interne Oszillator taktet?
Da wo man es erwarten würde: Im Kapitel "Calibrated Internal RC
oscillator". Das beginnt mit dem Satz: "The calibrated internal RC
Oscillator provides a fixed 1.0MHz, 2.0MHz, 4.0MHz, or 8.0MHz
clock."
> Und: kann ich dann auch einen 20MHz Quarz anschließen oder eben nur> einen bis max. 16MHz?
Anschließen kannst du ihn, aber dass der Prozessor damit funktioniert,
ist nicht garantiert, da er nur bis 16 MHz spezifiziert ist. Ob in der
Praxis 20 Mhz trotzdem kein Problem sind, kann ich dir nicht sagen. Das
größte Problem beim Übertakten ist wohl der Flash, der dann nicht mehr
mitkommt.
> Ich finde nichts aktuelles und in dem Bereich tut sich ja eigentlich> ständig etwas.
Bei neueren Prozessoren schon, aber dadurch ändern sich die
Spezifikationen älterer Prozessoren nicht.
Für serielle UART Kommunikation brauchst du mindestens einen
Keramik-Resonator. Der interne R/C Oszillator eignet sich nicht
zuverlässig.
Für USB brauchst du einen Quarz.
Fragezeichen schrieb:> Quarz, oder sind die> internen Oszillatoren präzise genug geworden?
Die Frage ist, was ist "präzise genug?". Quarz-Genauigkeit wird
gebraucht für serielle Verbindungen und für Uhrenfunktionen sowieso. Man
kann zwar bei vielen Contollern den Taktgenerator feintunen oder die
Zeitkonszanten individuell anpassen, aber für eine Serienfertigung ist
das eher unpraktisch, weil das mit einem Quarz nicht notwendig ist und
so ruinös sind die Kosten für einen Quarz ja auch nicht.
Braucht man keine genauen Zeiten oder Taktraten reicht jeder Taktgeber.
Fälle, in denen keine Quarzgenauigkeit gebraucht wird, ein interner
Taktgeber aber genau genug ist sind eigentlich eher selten und mit einem
Quarz ist man auf der sicheren Seite.
Georg
Die Halbleiterhersteller werden bei bestehenden Produkten auf keinen
Fall eine Änderung der Temperaturabhängigkeit durchführen, denn das
könnte bei manchen Kunden zu erheblichem Unmut führen. Ggf. werden
dadurch nämlich irgendwelche Kompensationsmaßnahmen ausgehebelt.
Mir ist ein Produkt bekannt, bei dem der Fertigungstest so schnell nach
dem Löten erfolgt, dass die Baugruppen noch nicht komplett abgekühlt
sind. Der Oszillator wird also leicht verstimmt kalibriert und justiert,
damit er dann bei Raumtemperatur seine Sollfrequenz erreicht.
Bei Nachfolgeprodukten kann es natürlich einen komplett anderes
Temperaturverhalten sowie Exemplarstreuungen geben.
> Fälle, in denen keine Quarzgenauigkeit gebraucht wird, ein interner> Taktgeber aber genau genug ist sind eigentlich eher selten
Mir fallen da spontan ein:
Bunte Lichterketten
Sound und Licht Effekte für Spielzeuge
Treppenhaus-Licht-Timer
Temperaturschalter
Eigentlich alles, was weder UART noch USB basierte Schnittstellen hat.
Stefan U. schrieb:> Mir fallen da spontan ein:>> Bunte Lichterketten
Da habe ich mich ungenau ausgedrückt - ich meinte Anwendungen, bei denen
man zwar keinen Quarz braucht, aber einen ziemlich genau abgeglichenen
internen Taktgeber verwenden kann. Bei einer Lichterkette sind die
Abweichungen völlig egal, es sei denn man überprüft sie mit einer
Stoppuhr oder so ähnlich. Das würde ich dann aber schon unter
Zwangsneurose einstufen. Ich kenne jemand, der dreht durch, wenn nicht
alle seine Uhren innerhalb einer Sekunde gleich gehen.
Georg
Hallo,
ich kenn das Problem vom Xmega, der ist noch nicht soo alt. Der
RC-Oszillator wird bei Raumtemperatur kalibriert. Eine RS232 Verbindung
zwischen zwei Controllern funktioniert bei Raumtemperatur praktisch
immer. Bei starken Temperaturänderungen driften die Frequenzen jedoch
deutlich weg, sodass die Hälfte der kommunizierenden Paare bei <0°C die
Verbindung verliert.
Manchmal driftet die eine Frequenz nach oben, die andere nach unten.
Eine RS232-Verbindung läßt maximal einen Fehler von 3% zu. Bekam der
Hauptcontroller einen Quarz, konnte der zweite mit dem RC-Takt betrieben
werden. Dabei gab es keine Ausfälle mehr.
Bernd
Eine eigene Frage?
Dieser Thread ist über 9 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.