Uhr mit nem Atmega32

Gast #230307
Lesenswert?

Also mein Problem liegt darin das die Uhr zu langsam läuft. Am Timer
habe ich einen Uhrenquarz mit 32768Hz angeschlossen.
Lasst euch bitte nicht an den Code aus hab noch nicht so viel gemacht
:)
Ich habe dann auch schon das Output Compare Register verändert aber so
richtig läuft das einfach nicht. Das Problem ist sie läuft zu langsam
oder halt zu schnell.
Ist mein Ansatz vielleicht falsch mit dem Output Compare ? Oder mache
ich sonst was falsch.
Meine einzige Idee noch ist den Teiler zu ändern und dann damit etwas
rum probieren.
Aber ich dachte das so ein Quarz doch sehr genau ist. Dann sollte ich
doch bei einen Teiler von 1024 einen Wert von 32768/1024 eintragen was
32 ist.
Was sind da eure Ideen oder Verbesserungen bin für jede Hilfe dankbar.
Angehängte Dateien:
Gast #230309
Lesenswert?

Also ich habe das jetzt auch schon wie von Christian beschrieben mit dem
Overflow Interrupt ausprobiert. Leider ist auch nicht das gewünschte
Ergebniss eingetreten.
Hab das wieder einmal angehängt. Komme jetzt auf 2sek pro Tag an eine
richtige Uhr ran. Besser will es aber einfach nicht laufen leider.
Vielleicht hat ja noch jemand ne Idee oder findet was ich falsch
gemacht habe.
Angehängte Dateien:
Gast #230311
Lesenswert?

Also ich dachte das das so schon genau genug ist ohne das ich in der
Software das mit einberechnen muss. Und meinst du mit Trimmer die
extern beschalteten Kondensatoren? Hab im Datenblatt nachgelesen das
die nicht notwendig sind. Wenn du was anderes meinst erklär mir das mal
bitte etwas genauer.
#230313
Lesenswert?

@Stephan

Wenn Du möchtest, dass Deine Uhr noch genauer läuft, dann solltest Du
die externen Kapazitäten so einstellen (trimmen), dass der Quarz exakt
auf 32768 Hz schwingt, jedes Hz Abweichung, erzeugt eine Abweichung von
ca. 2 Sekunden pro Tag (60*60*24).

Schau mal nach unter: ziehen von Quarzen

Und anschließend solltest Du die gesamte Schaltung bei einer ziemlich
konstanten Temperatur betreiben, denn der Quarz, die Kapazitäten und
der µC verändern sonst ihre Parameter und damit die Frequenz.

Und. Ich möchte Dich aber nicht mutlos machen. Der Quarz muss sich erst
"einbrennen", d.h. im laufe der nächsten Jahre wird er seine
Eigenschaften auch noch ändern.

Mit anderen Worten, hochgenaue Uhren sind eine Wissenschaft für sich.

Nicht umsonst haben Atomuhren eine Daseinsberechtigung ;)

Bernhard
Gast #230315
Lesenswert?

na, dann besser gleich einen DS3231. Schönes Teil - nicht lieferbar.
Muster gibts inzwischen, Produktionsmengen nicht. Habe jetzt zusätzlich
einen M41T81 + Quarz auf der Platine, kommt auch etwa hin mit den 2s.
Vielleicht kann ich dann die nächste Serie mit dem DS ausstatten.

@Stephan: hast du denn auch eine Pufferung am MC? Stromausfälle gibt es
immer wieder mal (ich meine, sie werden häufiger??) - was nützt eine
supergenaue Uhr, wenn sie sich ständig verstellt :-)
Gast #230317
Lesenswert?

Ok danke dann für die vielen Antworten. Werde mich dann mal ins Labor
setzen müssen und ausmessen und mit Kondensatoren etwas ausprobieren.
Hoffe das ich das damit etwas genauer noch hinbekomme wenn nicht muss
ich halt per Software das ausgleichen.

Vielen dank an euch!!!
Gast #230318
Lesenswert?

wenn du einen ds32khz verwendest, benötigst du keine kond. mehr ( ist ja
ein clk oszillator )=> ohne viel rumfummeln solltest du also eine
genauigkeit von 2sec pro jahr bekommen!

mfg, mathias

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren