mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega8 mit 32kHzQuarz asynchron


Autor: Baku (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin tohopen!
Ich habe hier schon im Archiv rumgewühlt, aber mein Problem wurde so
hier noch nicht behandelt. Normalerweise finde ich hier ja alles und
muss mich nicht zu Wort melden :-)

Aber nu habe ich mal eine Frage:
Wie genau läuft der Quarzoszillator beim ATMega8, wenn er mit einem
32,768kHz-Uhrenquarz bestückt ist? Und muss man nun CKOPT setzen oder
nicht?
Ich habe folgende Konfiguration:
Interne Clock, 1MHz, mit OSCCAL ein wenig gepimpt, damit mein UART
richtig mit dem PC reden kann. Spielt aber keine Rolle.
An XTAL1 und XTAL2 einen Uhrenquarz OHNE Kondensatoren, weil die mit
CKOPT ja schon drin sein sollten. Ach nee, dann heissen die ja TOSC1
und TOSC2. Und liegen auf Pin 9 und 10 und nehmen PB6 und PB7 weg!
Aber er oszilliert sehr fröhlich vor sich hin, auch garnicht mal sooo
weit weg von seiner Sollfrequenz, aber er unterscheidet sich doch
deutlich von meiner DCF77-Quelle, die zwar sehr empfindlich ist, aber
dafür auch die genaue Zeit ausgibt, wenn sie denn Empfang hat.
Und wenn ich CKOPT lösche, dann wird es noch schlimmer.
Ich leite das gesamte Timing von dem 32kHz Quarz ab, und der bringt mir
durch sein rumgeiere immer alles durcheinander... Oder zwingt mich
zumindest zu Softwarelösungen, die zwar nicht hübsch, aber dafür sehr
robust sind.

Nun. Im Grunde funktioniert ja alles, nur der Quarzoszilator eiert
herum. Das sollte ja bei Revision G besser werden.
Woran erkennt man eigentlich die Revision bei einem Mega8L im
DIP-Gehäuse?

Fragt
Baku

Autor: Jens D. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo..

ich habe ein ähnliches Problem im momennt..
anfangs laufen die uhren synchros aber nach 5 studnen laufen sie schon
auseinander und ich habe leider keine idee, warum.. (meine etwas nach)
egal, ob bei 1MHz oder bei 4MHz, daher schliesse ich die "rechenzeit"
aus..

aber leider keine Idee, woran es liegt.

Vor einem Jahr etwa hatte ich in ASM eine Uhr gebastelt, morgends
eingeschaltet und am naegsten tag zur kirchenglocke wieder 0 Uhr

hast du evtl noch einen anderen uhrenquarz da??

aber das gesamte timing ueber einen uhrenquarz ist schon korrekt.
das einzige andere ist nur dass ich nicht jede sekunde einen int
bekomme, sondern 32 mal in der sekunde

Gruss

Autor: Baku (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin!
Na das beruhigt mich ja, dass ich nicht alleine damit bin.
Die Abweichung beträgt jetzt eine inute über 12 Stunden, also 0,14%,
das ist für einen Quarz mächtig viel.
Rechenzeit kommt als Fehlerquelle wg. Interruptsteuerung auch nicht in
Betracht.
Ich werde als nächstes mal a.) den Quarz wechseln, obwohl der nagelneu
aus der Tüte war, und dann die internen Kondensatoren abschalten und
zusehen, ob ich das mit externen + Trimmer besser hinkriege.
Wenn gewünscht, berichte ich hier von den Ergebnissen.

Gruss,
Baku

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt da ein Problem.
CKOPT muss gesetzt werden, damit werden an jedem XTAL-Pin 33pF gegen
Masse angehängt.
Andernfalls schwingt der Oszillator sonstwo.
Und da ist das zweite Problem, ältere Serien des ATMega8 haben einen
Fehler, da funktioniert das mit den Kondensatoren nicht, man muss da
extern die 2 Kondensatoren anschliessen.
Meine haben den Datecode 0311 / Rev. 35569E und die haben die Macke.
Da kann ich CKOPT ein oder ausschalten, da tut sich nichts.
Es ist auch normal, dass der Oszillator knapp 2 Sekunden braucht, um
den regulären Pegel zu erreichen.

Wer ein Langwellenradio mit Digitalanzeige hat, kann dieses mal ganz
dicht an den Controller halten, der Quarz ist dann auf einer Vielfachen
von 32.768kHz zu hören,
z.B. x 5 = 163.84 kHz oder x 6 = 196.60 kHz.
Ohne Kondensatoren hing die 6. Oberwelle etwas über 200kHz.

Gruss
Jadeclaw

Autor: Baku (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nabent!
So, Problem scheint gelöst:
Einfach einen anderen (neueren) ATMega8 genommen, CKOPT gesetzt und bis
jetzt ist die Abweichung nach 3 Stunden unter einer Sekunde.
Schien wohl genau das gewesen zu sein.

Viele Grüsse,
Baku

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.