Hallo! In meinem aktuellen Projekt verwende ich einen RTC Baustein, welcher einen Uhrenquarz (32.768 KHz) benötigt. Diesen habe ich, da ich ihn bei der Bestellung bei einem online Versandhaus vergessen hatte beim örtlichen Conrad erstanden. Bei der Frage nach der Kapazität sagte der Mitarbeiter schlicht "Wir haben nur diese". Im Datenblatt fand ich dann heraus, dass die Kapazität mit 7pF angegeben wird. Im Datenblatt der RTC steht, dass diese auf die Zusammenarbeit mit einem 6pF Quarz optimiert wurden. Nun habe ich den Effekt dass meine RTC VIEL zu schnell läuft. Sie gibt ca 70 Sekundentakte / Minute. Interessanterweise in etwa in dem Verhältnis zu viele Takte in dem auch der Quarz zu viel Kapazität hat. Ich hätte zwar damit gerechnet, dass Sie durch den Unterschied nicht Atomuhr genau läuft aber dass hätte ich nicht erwartet. Vermutlich verstehe ich dafür zu wenig von der dahinterliegenden Oszillatorschaltung. Meine Frage ist, was bedeutet die Kapazität des Quarzes für die Schaltung bzw. warum wirkt sich der Unterschied von 1pF derart stark auf die Frequenz der Schaltung aus? Oder ist meine Vermutung, dass es an der zu hohen Kapazität des Quarzes liegt schon falsch und es gibt eine andere Ursache?
Derart extrem, also 70/60, lässt sich die Frequenz von Quarzen in den üblichen Schaltungen m.W. nicht ziehen. Da muss eine andere Ursache vorliegen. RTC Typ? Schaltung?
Hast du mal mit einem Oszi. die Schwingfrequenz des Quarzes gemessen?
RTC ist die DS1337 und der Quarz ist direkt an die beiden Pinne der RTC gesteckt. (Wie im Datenblatt beschrieben ist bis auf GND nichts auf der Seite des quarzes angeschlossen.
Chris schrieb: > Hast du mal mit einem Oszi. die Schwingfrequenz des Quarzes gemessen? Nein leider besitze ich kein Oszi.
Zur Einordnung: Die parsitären Kapazitäten von IC-Pins liegen im Bereich weniger pF und sind natürlich nicht ultrastabil (Temp/Humid). Wenn eine Abweichung von 1pF eine solche Frequenzabweichung bewirken könnte, dann wären Quarzoszillatoren blosse Schätzeisen.
Chris K. schrieb: > Nein leider besitze ich kein Oszi. Andersrum gefragt: Wie hast du diese Abweichung gemessen?
A. K. schrieb: > Chris K. schrieb: >> Nein leider besitze ich kein Oszi. > > Andersrum gefragt: Wie hast du diese Abweichung gemessen? Ehm... diese Frage möchte ich nicht beantworten... nein quatsch. Ich habe die RTC per i2c angewiesen den SQW Output mit 1Hz auf low zu ziehen und eine LED dran gesteckt. Dann meine Armbanduhr auf 15 sekunden gestellt und gezählt wie oft die LED aus geht bis die Uhr piept und dann hochgerechnet. Und ja: natürlich hätte ich lieber ein Oszi. gehabt :-D
da stimmt was mit dem quarz nicht. hab zwar nur den ds1307 am laufen aber der geht mit den aus mainboards ausgebauten 32,768khz quarzen ohne probleme. reichelt hat da deutlich mehr auswahl. 6p, 9p, 10p, 12,5p, 5p ......
Wenn das CL falsch ist, wird der Quarz auf eine andere Frequenz "gezogen" selbst bei 14% Unterschied im CL macht das aber nur wenige Sekunden pro Tag aus. ein derart krasser Unterschied kann nur dadurch geschehen, dass der Oszillator nicht richtig arbeitet oder dass ein Fehler in der Software vorliegt. 15 Sekunden Messzeit ist z.B. zu kurz. Da kann es sein, dass in Wirklichkeit 14 oder 16 Takte ausgegeben werden. Wenns nur am CL läge, könnte man das durch einen zusätzlichen Kondensator ausgleichen.
Peter R. schrieb: > ein derart krasser Unterschied kann nur dadurch geschehen, dass der > Oszillator nicht richtig arbeitet oder dass ein Fehler in der Software > vorliegt. 15 Sekunden Messzeit ist z.B. zu kurz. Da kann es sein, dass > in Wirklichkeit 14 oder 16 Takte ausgegeben werden. Das verstehe ich jetzt nicht ganz... wenn ich feststelle, dass die LED 17 mal blinkt während in Wirklichkeit nur 15 sekunden vergangen sind, steht doch fest, dass Sie viel zu schnell läuft? Und zwar dass Sie bei 1Hz den pin 70 mal pro Minute auf low zieht. Wo ist mein Denkfehler? 6A66 schrieb: > Ähem - gesteckt? Wie? Naja ehm... auf einem öh... Steckbrett halt...
Ist da auch noch ein passender Widerstand mit beteiligt, der nur sowiel Strom fliessen lässt wie das IC abkann? Oder hängt die LED direkt am Ausgang des armen ICs?
A. K. schrieb: > Ist da auch noch ein passender Widerstand mit beteiligt, der nur sowiel > Strom fliessen lässt wie das IC abkann? Oder hängt die LED direkt am > Ausgang des armen ICs? Aber selbstverfreilich sooooo grün hinter den Ohren bin ich nun auch wieder nicht :-D. Das IC kann 20mA am Ausgang und es fließen ~8mA. Außerdem habe ich (wie bei fast allen billigen Bauteilen) die doppelte Menge bestellt. Habe sowohl den Quarz zum Test ausgetauscht und auch die DS1337 die ist also intakt.
Chris K. schrieb: > Das verstehe ich jetzt nicht ganz... wenn ich feststelle, dass die LED > 17 mal blinkt während in Wirklichkeit nur 15 sekunden vergangen sind, > steht doch fest, dass Sie viel zu schnell läuft? Und zwar dass Sie bei > 1Hz den pin 70 mal pro Minute auf low zieht. Wo ist mein Denkfehler? Alleine dadurch, dass der Augenblick des Messbeginns nicht genau am Sekundenbeginn erfolgen kann, gibt es schon einen Quantisierungsfehler, je nachdem , ob kurz vor oder kurz nach dem Sec-beginn mit der Messung begonnen wird, ebenso ob kurz vor oder nach dem Beginn der 16.Sekunde die Messung beendet wird. Die Zahlen waren ja auch nur ein Beispiel, um zu erklären, warum eine Messzeit von 15 sec eigentlich zu kurz ist. Wenn schon nach 15 sec ein Fehler erkennbar ist, liegts nicht am falschen CL des Quarzes. Grundaussage ist: falscher Wert von CL wirkt sich als einige sec pro Tag aus, nicht als sec pro Minute.
Chris K. schrieb: > Das IC kann 20mA Wenn du die RTC meinst - da sind es 3mA. > ist also intakt Es geht dabei weniger um einen Defekt, sondern um mögliche Einbrüche bei der Stromversorgung, die einen empfindlichen Oszillator ins Stottern bringen können.
Okay. Was könnte denn dazu führen, dass sich das so extrem auswirkt? Falscher Quarz also zu hohe Frequenz ist klar. Aber der hat (zumindest mal laut Aufdruck auf dem tütchen 32.786 Khz wie es die RTC auch benötigt.) Jetzt wärs natürlich hilfreich das Ding mal messen zu können...
Das Messen des Quarzes selbst benötigt Messtechnik, die Dir sicher nicht zur Verfügung steht. Dann nimm halt einen 74HC4060, der einen Oszillator enthält und löte die Quarze, den vom Motherboard und den von C... mit richtiger Beschaltung dran.
Hallo, ich habe so ein (zwei) Module an einer Bakenuhr laufen. http://img02.taobaocdn.com/imgextra/i2/284400281/T2.UJmXg4NXXXXXXXX_!!284400281.jpg Auch hier läuft die RTC DS1307 Uhr zu schnell verglichen mit einer Atomuhr. So dass ich das Gehäuse des 32kHz Quarzes erst mal auf Masse gelegt habe und bisher zwei keramische NP0 Kondensatoren mit je 3,9pF Dazu gelötet habe. Die Abweichung liegt noch zu hoch; bezogen auf eine Woche ~ 1Minute. Ich werde noch bis zu 10pF NP0 die Kondensatoren vergrößern müssen. Von der SW ist das bei mir ähnlich, das 1Hz Signal das DS1307 stößt den µC atmega168 an und dieser zählt die Software Uhr weiter. Alle 24 Std. wird die Zeit erneut aus dem DS1307 gelesen. Hier sind Bilder (als PDF) vom der LCD und dem Entwicklungsboard. [1] http://www.qrpforum.de/index.php?page=Attachment&attachmentID=12608 [2] http://www.qrpforum.de/index.php?page=Attachment&attachmentID=12609
Mit dem DS32Khz hast Du das Problem nicht, falls es sich um ein wirkliches Hardware-Problem handelt :-) Hast Du auch Stützkondensatoren für VCC am uC und DS1337?
Chris K. schrieb: > Naja ehm... auf einem öh... Steckbrett halt... Also hast du auch noch zusätzliche parasitäre Kapazitäten durch die Steckbrettkontakte.
A. K. schrieb: > Es geht dabei weniger um einen Defekt, sondern um mögliche Einbrüche bei > der Stromversorgung, die einen empfindlichen Oszillator ins Stottern > bringen können. Mhm interessanter Punkt... also das könnte bedeuten (korrigiere mich), dass hier eine Art unschärfe Relation vorliegt? Dass also meine Messmethode (die LED um den Takt sichtbar zu machen) den Oszillator aus dem Tritt bringt weil sie zuviel Strom von der RTC zieht?
So war es gemeint. Ziehen kann sie allerdings nichts, da der betreffende Ausgang Open Drain ist, d.h. die LED müsste per Widerstand an VCC liegen.
Also zumindest die Verbindung Quarz zu IC darf nicht über das Steckbrett führen. Da sind sofort Kapazitäten von 10pF und mehr an den Zuleitungen beteiligt, die das Schwingen des Oszillators beeinflussen. Da kann es auch sein, dass von den Nachbarschienen im Steckbrett übersprechende Impulse vom Oszillator als zusätzliche Impulse aufgenommen werden, die entweder einzelne Schwingungen des Quarzes überdecken oder zusätzlich gezählt werden.
A. K. schrieb: > So war es gemeint. Ziehen kann sie allerdings nichts, da der betreffende > Ausgang Open Drain ist, d.h. die LED müsste per Widerstand an VCC > liegen. Das tat sie. Ich habe sie jetzt ausgebaut, habe aber weiterhin den gleichen Effekt. Mir kam gerade noch eine andere Sache in den Sinn. Ich frage die Uhr sehr häufig über i2c ab (in meinem test etwa 4 mal pro Sekunde). Kann es sein, dass Sie das nicht verträgt? Peter R. schrieb: > Da kann es auch sein, dass von den Nachbarschienen im Steckbrett > übersprechende Impulse vom Oszillator als zusätzliche Impulse > aufgenommen werden, die entweder einzelne Schwingungen des Quarzes > überdecken oder zusätzlich gezählt werden. Auf den Nachbarschienen ist ja gar nichts los.. wie im Datenblatt beschrieben habe ich die Seite fein säuberlich leer gelassen. Habe auch mal ein Bild vom Aufbau angehängt.
Danke für das Bild des Aufbaus. Das Erklärt Vieles. (Kicher!) Schon einmal etwas von Stützkondensatoren gehört? Hier vagabundieren die Umschaltimpulse durch die Landschaft, dass ein ordentliches Arbeiten der Schaltung nur als Zufall bezeichnet werden kann. Mindestens: für ein IC jeweils nur eins der blau/rot gekennzechneten Schienenpaare verwenden. und nicht plus von dem rechten Paar holen und Minus vom linken. Dazu auch bei jedem roten/blauen Schienenpaar einen Kondensator ca. 100nF als Stützkondensator anschließen. Besser wäre es, mit möglichst kurzer Leitung direkt an jedem IC den Stützkondensator anzuschließen. Wahrscheinlich arbeitet das RTC sogar einwandfrei, der Kontroller dürfte wegen der fehlenden C's spinnen.
Peter R. schrieb: > Dazu auch bei jedem roten/blauen Schienenpaar einen Kondensator ca. > 100nF als Stützkondensator anschließen. Okay ehm... mit Anschließen meinst du den Kondensator wirklich zwischen die beiden Schienen packen? Ich glaube ich muss mir das Konzept von Kondensatoren nochmal genauer angucken... Kannst du vielleicht kurz erklären was das bringt? Also wieso man das machen sollte? Peter R. schrieb: > Wahrscheinlich arbeitet das RTC sogar einwandfrei, der Kontroller dürfte > wegen der fehlenden C's spinnen. Eher unwahrscheinlich (würde ich sagen), da ja bei meinen ersten Tests der uc keine Rolle spielte, da ich an der LED ja direkt den 1Hz Puls angezeigt habe und dieser wahr schon deutlich zu schnell. Danke schonmal für die Tipps. Bisher haben solche Stützkondensatoren (bei den bisherigen Problemen) noch nie einen Effekt gehabt, deshalb habe ich das bisher immer als Esotherik abgetan. Bei der Quarz-Klamotte könnte ich mir schon eher vorstellen, dass hier das Problem liegen könnte...
ja, einen pin des C an die blaue Schiene, den anderen an die rote Schiene anschließen. So ein Kontroller zieht beim Umschalten für Teile einer Mikrosekunde Strom von -zig mA aus der Vcc-Spannungsversorgung. Da reicht die Längsinduktivität von fünf oder zehn cm Draht aus, um die Spannung um ein V oder mehr einbrechen zu lassen. Chris K. schrieb: > da ich an der LED ja direkt den 1Hz Puls > angezeigt habe Hast Du wirklich das RTC in Betrieb? Oder hast Du ein Programm geladen, das nur den Takt des Kontrollers benutzt? Gerade die Abweichung im Prozent-Bereich führt zur Vermutung, dass da der interne RC-Takt benutzt wird, der bei atmegas im Auslieferungszustand aktiv ist.
Peter R. schrieb: > Hast Du wirklich das RTC in Betrieb? Oder hast Du ein Programm geladen, > das nur den Takt des Kontrollers benutzt? Gerade die Abweichung im > Prozent-Bereich führt zur Vermutung, dass da der interne RC-Takt benutzt > wird, der bei atmegas im Auslieferungszustand aktiv ist. Die RTC hat direkt einen Output PIN auf dem mann in verschiedenen frequenzen einen output "einschalten kann". Diesen habe ich auf 1Hz gestellt und eine LED dran gepackt Die ist in dem Aufbau nicht mehr zu sehen da ich sie wegen eines Tipps hier rausgenommen habe. Aber: Dein Tipp funktioniert tatsächlich!! Ich habe einen genauen (zumindest sofern es mit dem Auge und dem klopfen auf den Tisch messbar ist) Sekudentakt an der RTC!! Ein Riesenfortschritt :-D Habe jetzt VCC und GND der RTC am selben Schienenbar und an dieses Schienenpaar ein 0,33uf Kondensator. Jetzt hierzu noch die Fragen: - Inwiefern wirkt sich die größe dieses Stützkondensators auf die Genauigkeit aus? Muss man diesen irgendwie berechnen? Sollte ich mir wie von dir empfohlen einen 100nf besorgen? - Du hattest erwähnt es wäre besser, den Kondensator möglichst nah am IC zu platzieren. Besser näher an GND oder an VCC oder egal? Danke!
Chris K. schrieb: > - Inwiefern wirkt sich die größe dieses Stützkondensators auf die > Genauigkeit aus? Muss man diesen irgendwie berechnen? Sollte ich mir wie > von dir empfohlen einen 100nf besorgen? Je größer, desto besser, solange es sich um eine Keramik- und nicht um einen Elektrolytkondensator handelt. 47nF sind meist das Minimum, 100nF ist heute Standard, und 330nF bist du erst recht auf der sicheren Seite. > - Du hattest erwähnt es wäre besser, den Kondensator möglichst nah am IC > zu platzieren. Besser näher an GND oder an VCC oder egal? Das ist egal. Es komm auf die Summe der beiden Leitungslängen zu dem VCC- und dem GND-Pin des ICs an. Auf dem Steckbrett würde ich den Kondensator einfach diagonal über das IC legen und dabei die jeweils nächstgelegenen Steckkontakte an den IC-Pins nutzen. Die Drähte für die Stromversorgung selbst kannst du auch einen Kontakt weiter außen einstecken. Du solltest dir angewöhnen, generell jedem IC einen solchen Kondensator zu spendieren, denn er hat zwei Funktionen: Er hält externe Störungen vom IC ab, sorgt aber auch dafür, dass die vom IC selber produzierten Störungen gleich vor Ort weitgehend vernichtet werden und somit weniger stark zu anderen Schaltungsteilen gelangen können.
Super. Vielen Dank! Für die meisten hier wahrscheinlich klar, für mich die Top-Erkenntnis des Monats :-D
Entkoppelkondensator Der Entkoppelkondensator hat die Aufgabe, die Versorgungsspannung nahe an einem IC für hochfrequente Ströme zu puffern (entkoppeln, engl. decoupling). Schnelle Digital- und Analogschaltungen benötigen vor allem beim Umschalten sehr schnell viel Strom, in der Größenordnung von Nanosekunden bis Mikrosekunden, je nach IC Milliampere bis Ampere. Diese müssen mit möglichst geringem Widerstand und Induktivität geliefert werden. Ein Stromversorgungsnetz auf einer Platine kann das meist nur unzureichend, dazu sind die Leitungen meist zu lang und damit die Induktivität zu hoch. Ein nah am IC platzierter Kondensator liefert diesen Strom für kurze Zeit, ohne dass die Spannung nennenswert einbricht. Die Entkopplung der Stromversorgung geschieht meist mehrstufig, d.h. es werden Kondensatoren verschiedener Arten und Kapazitäten eingesetzt, siehe Stromversorgung für FPGAs. Praktische Anwendung Jeder Digitalschaltkreis benötigt einen 100nF Keramikkondensator nah (kleiner 20mm) an den Anschlüssen von VCC und GND. Je schneller der IC schalten kann, umso wichtiger ist er. Für jedes Anschlusspaar von VCC und GND eines ICs muss ein Kondensator verwendet werden. Sparen geht hier oft schief! Schnelle Analogschaltkreise wie Operationsverstärker, Treiber etc. brauchen auch individuelle Entkoppelkondensatoren. Pi mal Daumen gilt: Je größer der Kondensator, umso weiter kann er von dem Verbraucher weg sein, da er auf Grund seines Innenwiderstands weniger HF-tauglich ist. Es ist somit nicht sinnvoll, einen 1000µF Elektrolytkondensator 10mm neben einen Digital-IC setzen zu wollen. Dort gehört der 100nF Keramikkondensator hin. Aber für die Stromversorgung von Motoren, Treibern und H-Brücken sind derartige großen Kondensatoren wichtig und sollten nicht zu weit entfernt sein. Chris K. schrieb: > - Du hattest erwähnt es wäre besser, den Kondensator möglichst nah am IC > zu platzieren. Besser näher an GND oder an VCC oder egal? Hauptsache so nah wie möglich am IC - also bei deinem Schneckentempo was auf der Platine läuft bis 5cm. Chris K. schrieb: > - Inwiefern wirkt sich die größe dieses Stützkondensators auf die > Genauigkeit aus? Muss man diesen irgendwie berechnen? Sollte ich mir wie > von dir empfohlen einen 100nf besorgen? Der Koppel-C stellt nur die Stromversorgung sicher. Siehe oben. Ohne ihn kann lapidar gesagt jeder IC ins Stottern kommen. Auf Englisch nennt man das Decoupling. Eines der essentiellsten Probleme beim Layout von FPGAs. Dort macht man für gewöhnlich die Entkoppelung auf der Rückseite der Platine. Auf der Oberseite sitzt der FPGA dann z.B. im BGA Gehäuse. So sieht das dann aus. http://forums.xilinx.com/t5/image/serverpage/image-id/1446i1196440B1ED04494/image-size/original?v=mpbl-1&px=-1 Alternativ geht man bei den neuen Stratix FPGAs auch schon dazu über eine ganze Platine zwischen FPGA und PCB zu löten. Nur um den FPGA entkoppeln zu können.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.