Forum: Mikrocontroller und Digitale Elektronik Atmega Einschwingzeit ext. 32k


von X- R. (x-rocka)


Lesenswert?

Moinsen,

ich habe hier einen ATmega328P, der mit den internen 8MHz (/8) läuft, 
aber als feste Zeitbasis zusätzlich einen 32,768kHz Uhrenquarz nutzt.
Funktioniert alles gut, aber die Einschwingzeit des 32k Quarzes beträgt 
satte 5 Sekunden!
Ist das normal? Was kann man da machen? Im Datenblatt ist nichts zu 
finden, die SUT Fuses beziehen sich nur auf die CPU Clock.

Soweit ich weiß, haben die Kondensatoren kaum Einfluss auf die 
Einschwingzeit (trotzdem getestet).
Den Quarz kann ich auch ausschließen, ist ein Abracon 
ABS07-32.768KHz-1-T in 3.2 x 2.5mm den ich mit einem SAM3U schon benutzt 
habe, da benötigt der die übliche 1 Sekunde.

Hat jemand ähnliche Erfahrungen gemacht oder eine Idee?

Danke,
X

von X- R. (x-rocka)


Lesenswert?

Keiner ne Idee oder ähnliche Erfahrungen?

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

5 Sekunden ist zu lang. Was hast Du denn für externe Kondensatoren dran, 
wie ist Deine Leitungsführung von Controller zu Quarz?

von Gregor B. (Gast)


Lesenswert?

X- Rocka schrieb:
> Ist das normal? Was kann man da machen? Im Datenblatt ist nichts zu
>
> finden

Datenblatt Atmel, S.32 Tabelle 8.7

...

CL 12,5pF, max. ESR 30kOhm

...

Datenblatt Abracon:

CL = 12,5pF, ESR_max = 70kOhm

von X- R. (x-rocka)


Lesenswert?

Leitungen ca. 5mm lang, 0,2mm Breite auf Außenfläche, nix was kracht 
macht in der Nähe.
Kondensatoren: 12pF COG in 0402.

von X- R. (x-rocka)


Lesenswert?

Gregor B. schrieb:
> X- Rocka schrieb:
>> Ist das normal? Was kann man da machen? Im Datenblatt ist nichts zu
>>
>> finden
>
> Datenblatt Atmel, S.32 Tabelle 8.7
>
> ...
>
> CL 12,5pF, max. ESR 30kOhm
>
> ...
>
> Datenblatt Abracon:
>
> CL = 12,5pF, ESR_max = 70kOhm

Und da steht auch noch:
> Datenblatt Atmel, S.31 Tabelle 9.7
> Crystal CL (pF) Max ESR
> 6.5              75kOhm
Deswegen habe ich auch schon 4.7pF, 8.2pF, 10pF getestet, kein 
Unterschied.
Aber guter Hinweis, ich werde nochmal einen andern Quarz suchen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

X- Rocka schrieb:
> Funktioniert alles gut, aber die Einschwingzeit des 32k Quarzes beträgt
> satte 5 Sekunden!
> Ist das normal?

Dann hat er vermutlich einen hohen ESR.

Einschwingzeiten von 1 s sind durchaus normal, 5 s habe ich allerdings
auch noch nicht erlebt.  Sollte aber am Ende auch nicht so sehr
stören: das Ding schaltet man genau einmal ein, danach läuft er durch.

von X- R. (x-rocka)


Lesenswert?

Jörg Wunsch schrieb:

> Einschwingzeiten von 1 s sind durchaus normal, 5 s habe ich allerdings
> auch noch nicht erlebt.  Sollte aber am Ende auch nicht so sehr
> stören: das Ding schaltet man genau einmal ein, danach läuft er durch.

Habe ich so auch noch nicht erlebt. Ich brauche leider die "schnelle" 
Startzeit von max 1s.

von X- R. (x-rocka)


Lesenswert?

Hier eine gute Zusammenfassung über uCs mit 32k Quarz:
http://www.ti.com/lit/an/slaa322b/slaa322b.pdf

Da hier die Änderung der Kapazitäten überhaupt nix geändert hatte, 
hoffte ich noch irgendwas an der uC-Programmierung falsch gemacht zu 
haben.
Liegt dann wohl an der Kombination uC/Quarz(ESR).

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Mechanisch größeren Quarz wählen, die schwingen meist schneller an.

von Falk B. (falk)


Lesenswert?

@  X- Rocka (x-rocka)

>Habe ich so auch noch nicht erlebt. Ich brauche leider die "schnelle"
>Startzeit von max 1s.

Der Quarz muss ja nur bei erstmaligen Einschalten anschwingen, danach 
schaltet man ihn nie wieder aus. Wie in jeder Quarzuhr. Siehe [[Sleep 
Mode]].

von Peter D. (peda)


Lesenswert?

Was stört Dich an den 5s?

Entweder man hat eine stromsparende RTC mit Stützbatterie, dann spielt 
die Startzeit keine Rolle, da sie ja immer läuft.
Oder man braucht die RTC-Funktion nur wenn Spannung anliegt, dann leitet 
man sie einfach von dem 8MHz CPU-Quarz ab.


Peter

von X- R. (x-rocka)


Lesenswert?

1. -dolles Schämen- Keine Ahnung was ich mir da mit den 0402 am Freitag 
zurecht gelötet hatte, oder warum ich die falschen Cs erwischt habe... 
ich habe jetzt nochmal 4.7pF genommen, und siehe da: 1 Sekunde 
Startzeit...

2. Das ganze ist für einen Sensor an einem Datenlogger, der schaltet den 
Sensor nur bei Bedarf an- und aus. Innerhalb möglichst kurzer Zeit 
sollen die Sensordaten bereit stehen. Da mein Messwert zeitabhängig ist 
und kein Platz auf der LP, verwende ich den internen RC als CPU Takt und 
den externen 32k (in 3.2mm x 2.5mm) als Zeitbasis für die Messwerte.

Nun ja, mal sehen ob der nun schnell genug stabil ist.
Wenn nicht, dann kann ich den 32k wenigstens noch zum Kalibrieren 
nutzen.

von Falk B. (falk)


Lesenswert?

@  X- Rocka (x-rocka)

>und kein Platz auf der LP, verwende ich den internen RC als CPU Takt und
>den externen 32k (in 3.2mm x 2.5mm) als Zeitbasis für die Messwerte.

Den man sinnvollerweise laufen läßt, der Power Save Mode ist dein 
Freund.

von X- R. (x-rocka)


Lesenswert?

Falk Brunner schrieb:
> @  X- Rocka (x-rocka)
>
>>und kein Platz auf der LP, verwende ich den internen RC als CPU Takt und
>>den externen 32k (in 3.2mm x 2.5mm) als Zeitbasis für die Messwerte.
>
> Den man sinnvollerweise laufen läßt, der Power Save Mode ist dein
> Freund.

Klar würde ich das machen, nur kann ich mir das nicht aussuchen, da mir 
der Logger die Versorgung abschaltet...

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

X- Rocka schrieb:
> Klar würde ich das machen, nur kann ich mir das nicht aussuchen, da mir
> der Logger die Versorgung abschaltet...

Dann kannst du aber stattdessen auch einen Quarz für den CPU-Takt
benutzen.  Die Megahertz-Quarze schwingen viel schneller an, das
spart dir also Zeit und Strom, danach wirst du ja sowieso wieder
abgeklemmt.

von Peter R. (pnu)


Lesenswert?

Das langsame Anschwingen  (und auch Ausschwingen) hat mit der 
Schwinggüte des Quarzes zu tun.

Ein Quarz für 32kHz mit der Güte 32000 braucht zum Ausschwingen für das 
Verhältnis e:1 etwa eine Sekunde. - analog so viel Zeit auch beim 
Hochschwingen.

Das Hochschwingen geht aber schneller, wenn der Oszillator einen 
Verstärkungsüberschuss hat.

Das Verkleinern der C's bringt mehr Verstärkung im Maß 1/(C1*C2), also, 
wie oben, schnelleres Hochschwingen.

Man kann auch die Verstärkung mit Ckopt hochschalten, bzw. mit einer 
fuse-Einstellung für höhere Frequenz des Quarzes, geht aber auf Kosten 
der Stromaufnahme.
Wenn man es zu weit mit dem Mehr an Verstärkung treibt, entsteht aber 
die Gefahr des "wilden" Schwingens: dass der Oszillator frei, ohne 
Quarz, schwingt, auf einer Oberwelle des Quarzes schwingt oder anfängt 
zu "tröpfeln" dh. in Form von Schwingungspaketen schwingt.

von X- R. (x-rocka)


Lesenswert?

Jörg Wunsch schrieb:
> X- Rocka schrieb:
>> Klar würde ich das machen, nur kann ich mir das nicht aussuchen, da mir
>> der Logger die Versorgung abschaltet...
>
> Dann kannst du aber stattdessen auch einen Quarz für den CPU-Takt
> benutzen.  Die Megahertz-Quarze schwingen viel schneller an, das
> spart dir also Zeit und Strom, danach wirst du ja sowieso wieder
> abgeklemmt.

Wenn du mir einen 1MHz (bis 8MHz) Quarz im 3.2mm x 2.5mm (maximal) 
Gehäuse empfehlen kannst, gerne! :)

Bzw. wenn ich den Clock Prescaler nutze, zB mit 16MHz auf 1MHz CPU-Takt, 
lande ich dann im selben Leistungsbereich wie mit dem internen 8MHz/8 ?
16MHz gibt's glaub ich so klein.
Suchen gehen...

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Hier Meister, nimm 16Mhz und teile sie mit dem CPU-CLKPR auf die von Dir 
gewünschte Frequenz.

http://www.auris-gmbh.de/root/img/pool/pdf_files/hc3225.pdf

von X- R. (x-rocka)


Lesenswert?

Knut Ballhause schrieb:
> Hier Meister, nimm 16Mhz und teile sie mit dem CPU-CLKPR auf die von Dir
> gewünschte Frequenz.
>
> http://www.auris-gmbh.de/root/img/pool/pdf_files/hc3225.pdf

Danke, aber ich sehe gerade 3.2mm x 2.5mm waren geprahlt... die Teile 
setze ich woanders auch ein, hier musste ich auf 3.2x1.5 runter. Ich 
muss mal sehen, ob ich noch 3qmm freikriege - es ist wirklich eng, und 
ich möchte auf 0201 verzichten.

DANKE schon mal an alle!

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

X- Rocka schrieb:
> hier musste ich auf 3.2x1.5 runter

Dann ist es auch kein Wunder, dass die Teile so krückig anschwingen.

Von nichts wird nichts, oder: "There's no free lunch."

Deinen gordischen Knoten werden auch wir dir nicht lösen können.
Entweder hast du keine genaue Zeitbasis (interner RC-Oszillator), oder
nimmst einen größeren Quarz (besseres Anschwingverhalten bei 32 kHz
oder höherfrequenten), oder du musst deine Platzanforderungen
überdenken.

von X- R. (x-rocka)


Lesenswert?

Wenn ich den 3.2x2.5 nicht draufbekomme, dann werde ich den 32k zum 
kalibrieren nutzen. Könnte dann gerade so reichen mit der Genauigkeit. 
Bei jedem Start dann zuerst Chip-Temperatur messen und aus Eeprom den 
entsprechenden Timer-Wert laden.
Platzanforderungen habe ich mir nicht ausgesucht, bzw. vielleicht doch 
auf 0201 bei einigen passiven... bäh...

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.