Forum: Mikrocontroller und Digitale Elektronik RTC driftet nach Tagen mehrere Sekunden ab


von Felix N. (felix_n888)


Angehängte Dateien:

Lesenswert?

Heyho,
Ich habe mit Hilfe des MCP7940M eine Echtzeituhr gebaut, nun wollte ich 
gerne mit Hilfe der RTC eine LED Lampe steuern, jedoch gibt es da ein 
Problem.

Und zwar wenn man die Uhrzeit einstellt(zB. nach der Atomuhr) bleibt die 
RTC für mehrere Stunden(4-12 Stunden) Sekunden genau. Jedoch schon nach 
zwei Tagen hat die RTC eine Abweichung von +12 Sekunden. Nach einer 
Woche sind es schon gut 1-2 Minuten, damit ist es auf dauer nicht 
möglich eine Lampe zuverlässig zu steuern.

Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF 
Empfohlen. Ich habe mein Quarz danach ausgewählt. Dieser hat 7pF. Da es 
ein SMD Quarz ist habe ich diesen direkt an die Beinchen des IC's 
gelötet. Der IC selber steht in einem 8 Pin Sockel. Die 
Lastkondensatoren von 6.8pF(Das war das nächste an 7pF was ich kriegen 
konnte) befinden sich auf der Lochrasterplatine.


Angesteuert wird der IC über I2C mit einer Geschwindigkeit von 400KHz 
von meinem ATMega644(16MHz). Versorgt wird er von 2x AA Batterien die in 
Reihe geschaltet sind.(Die sind zwar eigentlich zu Overkill aber ich 
hatte gerade keine CR... Batterien zu Hand)

Manchmal kommt es auch vor das wenn die RTC zum ersten mal angesprochen 
wird(Boot) das der Oszillator nicht direkt anfängt zu schwingen, und 
erst beim 2 oder 3 Versuch der Oszillator anläuft.

Sollte ich die Lastkondensatoren auch direkt an die Beinchen dran löten?
Hat jemand ne Idee wo das Problem liegen könnte?

Mfg

von Klaus R. (klara)


Lesenswert?

Felix N. schrieb:
> befinden sich auf der Lochrasterplatine

Dann mach am besten mal ein Foto vom Aufbau.
mfg klaus

von Wolfgang (Gast)


Lesenswert?

Felix N. schrieb:
> Und zwar wenn man die Uhrzeit einstellt(zB. nach der Atomuhr) bleibt die
> RTC für mehrere Stunden(4-12 Stunden) Sekunden genau. Jedoch schon nach
> zwei Tagen hat die RTC eine Abweichung von +12 Sekunden.

Wenn die Uhr nach 12h noch sekundengenau ist und sich nach zwei Tagen 
herausstellt, dass sie durchschnittlich 4s pro 12h zu schnell gegangen 
sein muss, hat sie zwischendurch vielleicht das große Rennen gekriegt.

Vielleicht war die Temperatur deines Quarzes nicht konstant.

von Das ist normal (Gast)


Lesenswert?

Als Hobbybastler nimmt man da einen Drehkondensator und probiert so 
lange herum, bis die Abweichungen klein genug sind.

Theoretisch kann man zum Kalibrieren einen Alarm pro Sekunde ausgeben. 
Aber wenn du diese Sekunde nicht genau messen kannst, bringt dich das 
auch nicht weiter.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

der Fehler summiert sich auf. Dafür gibts die Trimm-Register. Abweichung 
ermitteln und Trimmung anpassen. Das müßtest du unter 
Langzeitbeobachtung wiederholen. Oder wegwerfen und DS3231 verwenden.

von Theor (Gast)


Lesenswert?

@ Felix

Foto vom Aufbau ist eine gute Idee von Klaus.

Vor allem erst einmal Informationen sammeln.

Was für ein Quarz ist das?

Die Abweichung ist 1E6*6s/24*3600s=69,444 ppm. (Siehe Kapitel 5.6.1. im 
Datenblatt: ww1.microchip.com/downloads/en/DeviceDoc/20005010F.pdf).

Was für Messgeräte hast Du? Frequenzzähler vorhanden?

---

Vorläufiges Urteil:

1. Rund 70ppm sind an sich nicht wirklich extrem ungewöhnlich.

Weitere Maßnahmen:
a) Vergleich mit Datenblatt des Quarzes
b) Layout überprüfen

Evtl. Lösungen:
b) Abgleich mit Trimmer möglich.
c) Ausgabe des Taktes am MCP-Pin möglich.
d) Abgleich durch Vorrichtungen im MCP7940 möglich. Bis zu +/- 192ppm.

2. Das ein Oszillator etwas Zeit braucht um an zu schwingen, ist normal.
Unklar ist, nach welchen "Versuchen", insbesondere in welchen 
Zeitabständen diese Versuche stattfinden, Du feststellst, ob der 
Oszillator schwingt. (Ich habe es vielleicht übersehen, aber ich finde 
keine Spezifikation im Datenblatt, wie lange die Anschwingzeit ist).

von Wolfgang (Gast)


Lesenswert?

Felix N. schrieb:
> Die Lastkondensatoren von 6.8pF(Das war das nächste an 7pF was ich kriegen
> konnte) befinden sich auf der Lochrasterplatine.

Das hört sich so an, als ob die die Kapazität deiner Verdrahtung 
(Leiterbahnen, IC-Sockel) nicht berücksichtigt ist. Durch richtiges 
Trimmen vom MCP7940M sollte sich das aber kompensieren lassen.

Wie genau (µs, ms, s?) hast du denn den Stand deiner Uhr jeweils 
bestimmt. Und wieso ist nicht klar, ob es nun 4 oder 12h waren, die die 
Uhr für dich nicht erkennbar vom Zeitnormal abwich.

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Felix N. schrieb:
> Und zwar wenn man die Uhrzeit einstellt(zB. nach der Atomuhr) bleibt die
> RTC für mehrere Stunden(4-12 Stunden) Sekunden genau.
> nach zwei Tagen eine Abweichung von +12 Sekunden
Also ca. 6s pro Tag bzw. 0,25s/h.
Das ist noch nicht so viel, als dass man Abweichungen innerhalb weniger 
h zwingend bemerken muß.
Wie ist den der Temperaturverlauf in der Zeit.
Kann es sein, dass z.B. über Nacht die Temp. deutlich absinkt?
Das würde evtl. bedeuten, das der Quarz einen sehr hohen Temp.-Koeff. 
hat.

> nach zwei Tagen hat die RTC +12s
Läuft also etwas zu schnell.

> Nach einer Woche sind es schon gut 1-2 Minuten,
Ja was den nu?
Oben sind es noch 6s/d also 42s pro Woche! Nun plötzlich bis 2 Minuten, 
was schon einen Unterschied mit Faktor 3 ausmacht?

> damit ist es auf dauer nicht
> möglich eine Lampe zuverlässig zu steuern.
Man kann eine Uhr auch aller paar Wochen nachstellen.
Es geht aber sicher auch noch etwas besser.

> Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF
> Empfohlen. Ich habe mein Quarz danach ausgewählt. Dieser hat 7pF. Da es
> ein SMD Quarz ist habe ich diesen direkt an die Beinchen des IC's
> gelötet. Der IC selber steht in einem 8 Pin Sockel. Die
> Lastkondensatoren von 6.8pF(Das war das nächste an 7pF was ich kriegen
> konnte) befinden sich auf der Lochrasterplatine.
Die Lastkapazitäten müssen in der Regel nicht zwingend in einem so engen 
Rahmen liegen. Mach ruhig mal paar pF mehr rein.
Man kann Quarze auch auch in einem gewissen Bereich abgleichen 
("ziehen").
Dazu nimmt man am besten einen kleinen Trimmer.
https://www.reichelt.de/trimmerkondensator-6-2-30-pf-gruen-tsc-06-300-p175819.html?

> Manchmal kommt es auch vor das wenn die RTC zum ersten mal angesprochen
> wird(Boot) das der Oszillator nicht direkt anfängt zu schwingen, und
> erst beim 2 oder 3 Versuch der Oszillator anläuft.
??? Unverständlich, was du da schreibst!
Die RTC wird doch mit den Primärzellen gepuffert.
Warum sollte die beim Booten des uC Probleme mit dem Anschwingen haben?
Oder geht es um den Quarz des uC oder was?

> Sollte ich die Lastkondensatoren auch direkt an die Beinchen dran löten?
Kurze Leitungen sind immer gut, aber paar mm sind kein nProblem. Muß 
also nicht sein.

> Hat jemand ne Idee wo das Problem liegen könnte?
Nicht wirklich, wegen deiner inkonsistenten Erklärungen.
Gruß Öletronika

: Bearbeitet durch User
von Das ist normal (Gast)


Lesenswert?

> und erst beim 2 oder 3 Versuch der Oszillator anläuft

Falls du ein Oszilloskop hast, den Square Wave Output ohne Teiler 
konfigurieren. Da darf man keine Jitter sehen. Sonst ist entweder die 
Kapazität falsch, oder du hast die Richtlinien zur Abschirmung nicht 
pedantisch genug befolgt.

von Wolfgang (Gast)


Lesenswert?

U. M. schrieb:
> Die Lastkapazitäten müssen in der Regel nicht zwingend in einem so engen
> Rahmen liegen. Mach ruhig mal paar pF mehr rein.
> Man kann Quarze auch auch in einem gewissen Bereich abgleichen
> ("ziehen").

Hast du mal in das Kapitel 4.6 (Digital Trimming) vom Datenblatt 
geguckt?

MicroChip hat diese Mimik bestimmt nicht eingebaut, damit man hinterher 
extern mit irgenwelchen Timmkondensatoren rumbasteln muss.
http://ww1.microchip.com/downloads/en/devicedoc/20002292b.pdf

von John (Gast)


Lesenswert?

Felix N. schrieb:
> Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF
> Empfohlen. Ich habe mein Quarz danach ausgewählt. Dieser hat 7pF. Da es
> ein SMD Quarz ist habe ich diesen direkt an die Beinchen des IC's
> gelötet. Der IC selber steht in einem 8 Pin Sockel. Die
> Lastkondensatoren von 6.8pF(Das war das nächste an 7pF was ich kriegen
> konnte) befinden sich auf der Lochrasterplatine.

Der Quarz „sieht“ die beiden Kondensatoren in reihe. Mit 2x 6,8pF hat 
der Quarz eine Last von 3,4pF + die parasitäre Kapazität der 
Leiterbahn/Verkabelung.

von Das ist normal (Gast)


Lesenswert?

> MicroChip hat diese Mimik bestimmt nicht eingebaut...

Die haben das für professionelle Entwickler eingebaut. Bei einem 
Hobbyfrickler liegt die Kapazität so weit daneben, dass der Quarz nicht 
zuverlässig, gleichmässig schwingt.

von Theor (Gast)


Lesenswert?

John schrieb:
> Felix N. schrieb:
>> [...]
>
> Der Quarz „sieht“ die beiden Kondensatoren in reihe. Mit 2x 6,8pF hat
> der Quarz eine Last von 3,4pF + die parasitäre Kapazität der
> Leiterbahn/Verkabelung.

Gut, dass Du darauf hinweist. Habe ich glatt übersehen.

von Wolfgang (Gast)


Lesenswert?

Das ist normal schrieb:
> Bei einem Hobbyfrickler liegt die Kapazität so weit daneben, dass der
> Quarz nicht zuverlässig, gleichmässig schwingt.

Deshalb hatte Das ist normal doch schon vorgeschlagen, sich am 
Multifunction Pin den Jitter vom 32768Hz-Takt anzugucken.

von Stray Cats (Gast)


Angehängte Dateien:

Lesenswert?

John schrieb:



> Der Quarz „sieht“ die beiden Kondensatoren in reihe.

Parallel.


CL = [(CL1 × CL2)/(CL1 + CL2) + CSTRAY]

Bild Quelle:
https://www.maximintegrated.com/en/app-notes/index.mvp/id/58


---
Fast Clocks
The following are the most common scenarios that cause a crystal-based 
RTC to run fast.

   1. Noise coupling into the crystal from adjacent signals. This 
problem has been extensively covered above. Noise coupling usually 
causes an RTC to be grossly inaccurate.
   2. Wrong crystal. An RTC typically runs fast if a crystal with a 
specified load capacitance (CL) greater than the RTC-specified load 
capacitance is used. The severity of the inaccuracy is dependent on the 
value of the CL. For example, using a crystal with a CL of 12pF on an 
RTC designed with a 6pF CL causes the RTC to be about 3 to 4 minutes per 
month fast.



Welcher Quarz genau  wurde denn verwendet?

von Wolfgang (Gast)


Lesenswert?

Stray Cats schrieb:
>> Der Quarz „sieht“ die beiden Kondensatoren in reihe.
>
> Parallel.
>
> CL = [(CL1 × CL2)/(CL1 + CL2) + CSTRAY]

Nein, in Serie. (EQUATION 4-1 im DS)

von Stray Cats (Gast)


Angehängte Dateien:

Lesenswert?

Wolfgang schrieb:
> Stray Cats schrieb:
>>> Der Quarz „sieht“ die beiden Kondensatoren in reihe.
>>
>> Parallel.
>>
>> CL = [(CL1 × CL2)/(CL1 + CL2) + CSTRAY]
>
> Nein, in Serie. (EQUATION 4-1 im DS)



Cosc ist die parasitäre Kapazität des Anschlusspin, siehe Seite 3.

von Wolfgang (Gast)


Lesenswert?

... und die Lastkapazität für den Quarz ist CL.

p.s. Das Datenblatt habe ich selber offen.

von Felix N. (felix_n888)


Angehängte Dateien:

Lesenswert?

Klaus R. schrieb:
> Dann mach am besten mal ein Foto vom Aufbau.

Habe ich angehängt. Das in grauen Klebeband eingewickelte Untere Teil 
sind die beiden Batterien. Die Gelben und Grünen Kabel sind die beiden 
I2C Leitungen. Das Orangekabel ist die Ground Leitung.

Theor schrieb:
> Was für ein Quarz ist das?

Dieser: 
https://www.reichelt.de/uhrenquarz-metallgehaeuse-2x2x6mm-7pf-32-768-ms1v-7-p85042.html

Theor schrieb:
> Was für Messgeräte hast Du? Frequenzzähler vorhanden?

Digitales Oszilloskop und Multimeter

Theor schrieb:
> Ausgabe des Taktes am MCP-Pin möglich.

Das ist normal schrieb:
> Falls du ein Oszilloskop hast, den Square Wave Output ohne Teiler
> konfigurieren. Da darf man keine Jitter sehen.

Habe das Control Register mal entsprechend Konfiguriert. Das Signal 
sieht gut aus. Nur manchmal sieht man das der Bereich der "HIGH" Pegel 
verzerrt.

U. M. schrieb:
> Wie ist den der Temperaturverlauf in der Zeit.
> Kann es sein, dass z.B. über Nacht die Temp. deutlich absinkt?

Eigentlich nicht vielleicht 1 Grad oder so meistens konstant 23 Grad in 
meiner Bude.

Mfg

von Schwäzzer (Gast)


Lesenswert?

Was fuer eine Huehnerquarz wurde denn verwendet ? Der Billigste aus der 
Bucht ?

von Dirk S. (fusebit)


Lesenswert?

Dafür hat der Chip doch das Trim-Register.
Ich musste meine MCP7941 auch dort abgleichen, seit dem passt es sehr 
gut.

von Stray Cats (Gast)


Lesenswert?

Wolfgang schrieb:
> ... und die Lastkapazität für den Quarz ist CL.
>
> p.s. Das Datenblatt habe ich selber offen.


Und wo sollen jetzt die beiden angebrachten Kondensatoren in Serie zur 
Kapazität des Quarzes liegen?

Das komplette Zitat:
1
TO :
2
> Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF
3
> Empfohlen. Ich habe mein Quarz danach ausgewählt. Dieser hat 7pF. Da es
4
> ein SMD Quarz ist habe ich diesen direkt an die Beinchen des IC's
5
> gelötet. Der IC selber steht in einem 8 Pin Sockel. Die
6
> Lastkondensatoren von 6.8pF(Das war das nächste an 7pF was ich kriegen
7
> konnte) befinden sich auf der Lochrasterplatine.
8
9
Der Quarz „sieht“ die beiden Kondensatoren in reihe. Mit 2x 6,8pF hat 
10
der Quarz eine Last von 3,4pF + die parasitäre Kapazität der 
11
Leiterbahn/Verkabelung.


(C1 × C2)/(C1 + C2)

ist doch immer noch parallel und mit angenommen 3pF in Reihe für die 
pins ~4,9 + pcb-stray kann man eh nur raten vlt. 1-2 , die Kondensatoren 
sind wohl etas zu klein

von Felix N. (felix_n888)


Lesenswert?

Schwäzzer schrieb:
> Was fuer eine Huehnerquarz wurde denn verwendet ? Der Billigste aus der
> Bucht ?

0,50€ für ein Quarz, weiß nicht ob das jetzt wirklich billig ist. Es ist 
so die RTC und die Quarze habe ich November 2017 bei reichelt gekauft da 
ich erst was anderes vorhatte wofür ich dann aber die rtc nicht mehr 
brauchte, deshalb liegt die RTC schon eine gefühlte Ewigkeit bei mir 
rum. Damals waren die "normalen" Quarze in Zylinderform(silber fabrig) 
bei reichelt ausverkauft, daher habe ich diese genommen.

Dirk S. schrieb:
> Dafür hat der Chip doch das Trim-Register.
> Ich musste meine MCP7941 auch dort abgleichen, seit dem passt es sehr
> gut.

OK. Dann muss ich da nochmal schauen, bei mir scheint da wohl was noch 
nicht in der Software mit der Unix Zeit zu stimmen, die letzte Unix Zeit 
minus die Aktuelle Zeit ist immer negativ. Müsste aber eig. positiv 
sein.

Stray Cats schrieb:
> (C1 × C2)/(C1 + C2)
>
> ist doch immer noch parallel und mit angenommen 3pF in Reihe für die
> pins ~4,9 + pcb-stray kann man eh nur raten vlt. 1-2 , die Kondensatoren
> sind wohl etas zu klein

(6.8pF * 6.8pF) / (6.8pF+ 6.8pF) = 3,4 pF. Nun ja wie hoch jetzt die PCB 
Kapazität ist weiß ich nicht laut Internet soll sie sich zwischen 3 und 
6pF bewegen wenn ich jetzt mal von 3pF ausgehe wären das CL=6,4pF.

Soll ich mal 10pF ausprobieren?

Mfg

Beitrag #5738639 wurde von einem Moderator gelöscht.
von Achim S. (Gast)


Lesenswert?

Stray Cats schrieb:
> (C1 × C2)/(C1 + C2)
>
> ist doch immer noch parallel

Äh: nein, eben nicht. Das ist die Formel für zwei in Reihe geschaltete 
Kondensatoren. Und genau das "sieht" der Oszillator: zwei in Reihe 
geschaltete Kondensatoren parallel zum Quarz.

von Theor (Gast)


Lesenswert?

Felix N. schrieb:
> Klaus R. schrieb:
>> Dann mach am besten mal ein Foto vom Aufbau.
>
> Habe ich angehängt. Das in grauen Klebeband eingewickelte Untere Teil
> sind die beiden Batterien. Die Gelben und Grünen Kabel sind die beiden
> I2C Leitungen. Das Orangekabel ist die Ground Leitung.

Ah. Naja. Dieser Aufbau wird etwas mehr Streukapazität verursachen, als 
direkt aufgelötetes SMD-IC mit SMD-Kondensatoren. Diese Tatsache alleine 
würde eine Verringerung der Kondensatoren erfordern. Siehe aber unten.

> Theor schrieb:
>> Was für ein Quarz ist das?
>
> Dieser:
> 
https://www.reichelt.de/uhrenquarz-metallgehaeuse-2x2x6mm-7pf-32-768-ms1v-7-p85042.html

Ok. Der sollte +-20ppm mit 7pF haben. (Bei Reichelt ist es auch schon 
vorgekommen, dass ein anderer Typ, als bestellt, geliefert wurde). Sind 
keine Aufdrucke auf dem Quarz vorhanden?

>
> Theor schrieb:
>> Was für Messgeräte hast Du? Frequenzzähler vorhanden?
>
> Digitales Oszilloskop und Multimeter

OK. Also kein Frequenzzähler. Und das Oszilloskop hat nur Auflösung von 
10Hz - entsprechend ~305ppm.

> Theor schrieb:
>> Ausgabe des Taktes am MCP-Pin möglich.
>
> Das ist normal schrieb:
>> Falls du ein Oszilloskop hast, den Square Wave Output ohne Teiler
>> konfigurieren. Da darf man keine Jitter sehen.
>
> Habe das Control Register mal entsprechend Konfiguriert. Das Signal
> sieht gut aus. Nur manchmal sieht man das der Bereich der "HIGH" Pegel
> verzerrt.

Das könnte man mal in einem Augendiagramm genauer betrachten. Falls das 
Oszilloskop es erlaubt, mehrere Kurvenzüge übereinander zu zeichnen.
Aber die Kapazität scheint mir vorerst wichtiger zu sein.

> U. M. schrieb:
>> Wie ist den der Temperaturverlauf in der Zeit.
>> Kann es sein, dass z.B. über Nacht die Temp. deutlich absinkt?
>
> Eigentlich nicht vielleicht 1 Grad oder so meistens konstant 23 Grad in
> meiner Bude.

Aha.


Gut. Also, an sich ist die Abweichung nicht dramatisch und lässt sich 
durch die interne Trimmung ausgleichen. Für Hobby-Zwecke würde ich das 
so lassen.

Man könnte aber die Kondensatorwerte erhöhen um etwa auf eine rohe 
Abweichung von unter 30ppm zu kommen.
Ungefähr auf 10pF (ggf. durch Parallelschaltung). Rechnerisch sollten es 
14pF sein, aber der Aufbau wird recht viel Kapazität beitragen, vermute 
ich.
Wenn man auf irgendwas um 20ppm bis 40ppm kommt wäre das auch gut, um 
etwas Reserve im Trimmbereich (siehe unten) zu bekommen, falls man doch 
mal Temperatur misst und das bei der Trimmung berücksichtigt.

Den Rest würde ich durch die Trimmung - d.h. setzen der entsprechenden 
Register im Chip lt. Datenblatt, Kapitel 5.6 -, ausgleichen.

Falls das Dingens dann doch mal auf eine Leiterplatte kommt, muss man 
das Thema nochmal anschauen.

von Wolfgang (Gast)


Lesenswert?

Stray Cats schrieb:
> Das komplette Zitat:
> TO :
>> Laut Datenblatt werden für den MCP7940M Lastkapazitäten von 6 bis 9 pF
>> Empfohlen.

Wer hat da denn die Kausalitäten verdreht?

Die Lastkapazität muss erstmal zum Quarz passen.

Das Datenblatt des MCP7940M sagt, dass passende Quarze eine 
Lastkapazität von  6-9  pF besitzen und Quarze mit 12.5 pF nicht 
empfohlen werden.

Als erstmal Cx1 und Cx2 Richtung 10..12pF vergrößern und dann nochmal 
den Gang der Uhr messen.
Tip: Mit einem 1pps-Signal vom GPS Empfänger geht das in ein paar 
Sekunden.

von Felix N. (felix_n888)


Lesenswert?

Theor schrieb:
> Diese Tatsache alleine
> würde eine Verringerung der Kondensatoren erfordern.

Wolfgang schrieb:
> Als erstmal Cx1 und Cx2 Richtung 10..12pF vergrößern und dann nochmal
> den Gang der Uhr messen.

Irgendwie bin ich jetzt ein bisschen Verwirrt. Im Datenblatt für CL 
steckt ja die Formel für 2 Kondensatoren die in Reihe geschaltet werden. 
Wenn mein Aufbau eine höhere Streukapazität aufweist. Dann muss ich doch 
die Kapazitäten stark verkleinern da mein Cstray ja hoch ist.


Wenn ich jetzt 2x 2,2pF parallel schalte bekomme 4,4pF eingesetzt in die 
Formel dann: 2,2pF + CStray(vielleicht 5-10pF). CL = 7,2pF bis 12,2pF.

Wenn ich doch die Kapazität von Cx1 und Cx2 erhöhe auf 10pF oder höher, 
kommen ja noch höherer Werte für CL raus.

Oder nicht?

Mfg

von Andreas M. (amesser)


Lesenswert?

Die X1/X2 Pins der Pins der RTC haben selbst Kapazität. Die müssen 
natürlich auch berücksichtigt werden. Laut Datenblatt 3pF/Pin. Damit 
ergibt sich

C1,2 = 2*(Cl - Cstray) - 3pF = 10pF - 2*Cstray

Deine Kondensatoren sind also viel zu groß. Eventuell brauchst du gar 
keine...

von Theor (Gast)


Lesenswert?

Felix N. schrieb:
> Theor schrieb:
>> Diese Tatsache alleine
>> würde eine Verringerung der Kondensatoren erfordern.
>
> Wolfgang schrieb:
>> Als erstmal Cx1 und Cx2 Richtung 10..12pF vergrößern und dann nochmal
>> den Gang der Uhr messen.
>
> Irgendwie bin ich jetzt ein bisschen Verwirrt. Im Datenblatt für CL
> steckt ja die Formel für 2 Kondensatoren die in Reihe geschaltet werden.
> Wenn mein Aufbau eine höhere Streukapazität aufweist. Dann muss ich doch
> die Kapazitäten stark verkleinern da mein Cstray ja hoch ist.
>
>
> Wenn ich jetzt 2x 2,2pF parallel schalte bekomme 4,4pF eingesetzt in die
> Formel dann: 2,2pF + CStray(vielleicht 5-10pF). CL = 7,2pF bis 12,2pF.
>
> Wenn ich doch die Kapazität von Cx1 und Cx2 erhöhe auf 10pF oder höher,
> kommen ja noch höherer Werte für CL raus.
>
> Oder nicht?
>
> Mfg


Ja. Tatsächlich. Die ganze Sache kann verwirrend sein. :-)

Gehen wir mal Schritt für Schritt durch.

CL soll um die 7pF sein.

Die Gleichung für CL ist:

CL = Cx1*Cx2/(Cx1+Cx2)

Da Cx1 gleich Cx2 ist, kann man das mit Cx = Cx1 = Cx2 vereinfachen zu:

CL = Cx*Cx / (2*Cx)            ; nun durch Cx kürzen
CL = Cx/2                     ; mit 2 multiplizieren
CL * 2 = Cx

Nun einsetzen:

7pf * 2 = 14pF

Wegen der Streukapazität, die ich mal mit 4pF ansetze, komme ich auf 
10pF.

OK. Trau mir nicht :-) Ich rechne es nochmal mit der Originalformel:

CL = Cx1*Cx2/(Cx1+Cx2)
CL = 14pF*14pF / (14pF + 14pF)
CL = 196pF^2 / 28pF
CL = 7pF


Deine Rechnung hingegen hat einen Fehler. Du setzt nämlich vermutlich 
unter dem Bruchstrich nur einmal den Kondensatorwert in die 
Originalformel ein.
Soll also Cx1 = Cx2 = 2,2pF + 5pF sein, wie Du schreibst.

CL = Cx1*Cx2/Cx?
CL = 7,2pF * 7,2pF / 7,2pF
CL = 7,2pF

Eigentlich muss die Rechnung aber lauten:

CL = Cx1*Cx2/(Cx1+Cx2)
CL = 7,2pF * 7,2pF / (7,2pF + 7,2pF)
CL = 51,84pF^2 / 14,4pF
CL = 3,6pF

was klarerweise ungleich 7pF ist. :-)

von Felix N. (felix_n888)


Lesenswert?

Andreas M. schrieb:
> Laut Datenblatt 3pF/Pin

Wo genau hast du das gefunden? Ich finde das nicht in meine Datenblatt.

Theor schrieb:
> CL soll um die 7pF sein.

Ach so!

Theor schrieb:
> Du setzt nämlich vermutlich
> unter dem Bruchstrich nur einmal den Kondensatorwert in die
> Originalformel ein

Theor schrieb:
> CL = Cx1*Cx2/Cx?

Nein ich meine schon CL = Cx1 * Cx2 / Cx1 + Cx2.

Theor schrieb:
> Soll also Cx1 = Cx2 = 2,2pF + 5pF sein

Cx1/2 = 4,4pF da Reihenschaltung 2,2pF. 5pF Streukapazität durchs PCB.
CL = 2,2pF(Cx1/2) + 5pF(Cstray) = 7,2F

Theor schrieb:
> 7pf * 2 = 14pF
>
> Wegen der Streukapazität, die ich mal mit 4pF ansetze, komme ich auf
> 10pF.

Ah okay. Wenn ich aber dann die Pin Kapazität(X1,X2 die ich nicht finden 
kann im Datenblatt) abziehe komme ich aber wieder auf 7pF für Cx1/2 oder 
nicht?

Berechnen ist ja alles schön und gut aber um herauszufinden was wirklich 
funktioniert hilft nur Ausprobieren ...

//EDIT: Habe die 3pF Input Kapazität doch gefunden!

Mfg

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Felix N. schrieb:
> Berechnen ist ja alles schön und gut aber um herauszufinden was wirklich
> funktioniert hilft nur Ausprobieren ...

Wenn die Uhr zu schnell läuft, schwingt entweder der Quarz zu schnell 
oder der Wert im OSCTRIM Register ist verdreht.

Bevor man an den Kapazitäten rumbastelt, sollte man erstmal auch einen 
Blick auf die aktuellen Trimm-Einstellungen werfen.

von imkeller (Gast)


Lesenswert?

Mann , time is money , ein Leben ist so kurz !

Geiz und Murks !

von Jens M. (schuchkleisser)


Lesenswert?

Ist eigentlich noch niemandem aufgefallen, das die Batterien an Pin 3 
müssen, wohingegen die normale Versorgung an Pin 8 sein sollte?
Vielleicht macht das auch noch was aus...

Ansonsten:
Ich würde tippen das 8,2-10pf den CL passend für den Quarz machen, den 
Rest kann man mit dem Trim-Register erreichen.
Wobei ich mich wundere warum es diese RTC sein muss. Ich kenne nur 
welche ohne externe Caps, die haben alle den Quarz direkt und das klappt 
1a.
Die DS3231 braucht z.b. nicht mal einen Quarz, der ist schon drin.

von Felix N. (felix_n888)


Lesenswert?

Wolfgang schrieb:
> OSCTRIM Register ist verdreht.

Nein ist es nicht. Da ich bis heute nicht mit dem Register gearbeitet 
habe, tute ich beim Booten des uC das Trim Register auf 0x00 setzten. 
Wird sich aber ändern wenn ich endgültig mit dem Register arbeite.

Werde jetzt erstmal die Uhr ein paar Tage laufen lassen, und dann mal 
mit dem Trimm Register kalibrieren und mal schauen. Desweitern habe ich 
noch ein Programmierfehler gefunden. Anstand den in Binärcode 
gewandelten PPM Wert ins OSCTRIM(Addr=0x08) zu schreiben habe ich 
versehentlich den Trim Wert ins RTC Month Register geschrieben den es 
gibt ein Wert der nennt sich OSCRUN(Wert=5, OSCRUN steht im Weekday 
Register). Habe beim Autocomplete nicht aufgepasst .... .

Jetzt macht das auch Sinn warum sich meistens der Monat auf 0 
zurückgesetzt hat wenn man die Kalibrierung angeändert hat.

Jens M. schrieb:
> Ist eigentlich noch niemandem aufgefallen, das die Batterien an Pin 3
> müssen, wohingegen die normale Versorgung an Pin 8 sein sollte?
> Vielleicht macht das auch noch was aus...

Ich verwende den MCP7940 in der "M" Version in dieser Version hat die 
RTC keine VBAT wo man die Batterie anschließen kann. Die "N" Version hat 
an Pin 3 den VBAT Pin wo man die Batterie Versorgung anschließt.

Mfg

von Klaus R. (klara)


Lesenswert?

Felix N. schrieb:
> Klaus R. schrieb:
>> Dann mach am besten mal ein Foto vom Aufbau.
>
> Habe ich angehängt. Das in grauen Klebeband eingewickelte Untere Teil
> sind die beiden Batterien. Die Gelben und Grünen Kabel sind die beiden
> I2C Leitungen. Das Orangekabel ist die Ground Leitung.

Das Problem bei Lochrasterplatinen ist in der Regel, Du bekommst keinen 
sauberen Aufbau hin. Und dann noch die Fassung, sie ist auch relativ 
hoch. Alles in allem kannst Du da locker ein paar pF durch die 
Leitergeometrie schon dazu erzeugt haben. Es gibt auch eng tolerierte 
pF-Kondensatoren. Aber wenn man nicht speziell darauf achtet, dann sind 
schon mal +/- 20% drin.

Wenn das eine Streifen-Lochrasterplatine ist, dann solltest Du versuchen 
wirklich sauber zu arbeiten.
mfg klaus

von Andreas M. (amesser)


Lesenswert?

Felix N. schrieb:
> Andreas M. schrieb:
>> Laut Datenblatt 3pF/Pin
>
> Wo genau hast du das gefunden? Ich finde das nicht in meine Datenblatt.

Weiter oben war das Datenblatt ja verlinkt, Tabelle 1-1 Parameter D8

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.