Forum: Mikrocontroller und Digitale Elektronik AVR+Uhrenquarz=Problem


von Oliver J. (skriptkiddy)


Lesenswert?

Hallo Leute,

ich habe folgendes Problem. Ich habe ein Projekt, bei dem einr 
Uhrenquarz genutzt wird, um Interrupt-getriggert Aufgaben zu erledigen. 
Das Projekt existiert in mehrfacher Ausführung und  ich habe schon 4 
Boards problemlos am laufen. Das 5. habe ich heute bestückt und der 
Quarzoszillaor, der an TIMER2 hängt, zeigt ein ganz komisches Verhalten:

Schalte ich das Board ein, erfolgt kein Timer2-Interrupt (keine 
Schwingung).  Wenn ich jedoch die eine Seite des Quarzes mit der 
Prüfspitze vom Oszi berühre (TOSC1), dann fängt das Teil plötzlich an 
mit schwingen und das Board verrichtet seine Arbeit. Berühre ich die 
andere Seite, dann klingt die Schwingung ab und der AVR tut nichts. Bei 
den anderen Boards passiert nichts dergleichen. Dort schwingt der 
Oszillator brav vor sich hin. Ich habe schon 3 Quarze probiert und auch 
mal die 6pF Lastkapazitäten weggelassen. Immer das Gleiche.
Den Atmega habe ich noch nicht getauscht, weil er in einem TQFP steckt, 
werde das aber morgen sicher mal machen.

Hat jemand schonmal ein ähnliches Problem gehabt bzw. eine Idee wo der 
Fehler stecken könnte?

Gruß Skriptkiddy

von Frank K. (fchk)


Lesenswert?

Mach mal einen Widerstand im Megaohm-Bereich zwischen TOSC1 und TOSC2. 
Das hilft beim Anschwingen. Eventuell ist auch die Lastkapazität ein 
wenig knapp dimensioniert.

fchk

von Peter R. (pnu)


Lesenswert?

Zunächst einmal:
Am Quarz selbst hat der Tastkopf erheblichen Einfluss aufs Schwingen und 
die Schwingamplitude.
 Allein durch Berührung mit dem Tastkopf des Scope werden 5 bis 10pF 
zusätzlich in die Schaltung eingebracht, sodass alleine dadurch der 
Oszillator zum Schwingen kommt, obwohl vorher die Schwingbedingung nicht 
erfüllt war.

Irgendwie kommen mir die 6pF komisch vor. Viele Uhrenquarze haben 12 pF 
als Lastkapazität. Da der Quarz die beiden C's in reihe sieht, wären 
zwei 24pF-Kondensatoren der richtige Wert, nimmt man die Streukapazität 
dazu, kommen so 15 bis 20 pF in betracht.

Dafür spricht die Tatsache, dass beim Berühren mit dem Tastkopf die 
Schaltung anfängt zu schwingen

von Oliver J. (skriptkiddy)


Lesenswert?

Danke euch beiden. Werde morgen mal größere Lastkapazitäten drauflöten. 
Da hab ich wohl das Datenblatt nur halbherzig gelesen.

Gruß Skriptkiddy

von Peter D. (peda)


Lesenswert?

Skript Kiddy schrieb:
> ich habe folgendes Problem. Ich habe ein Projekt, bei dem einr
> Uhrenquarz genutzt wird, um Interrupt-getriggert Aufgaben zu erledigen.

Und wozu dann der Uhrenquarz?
Der CPU-Quarz tuts doch auch und wenns nicht sonderlich genau sein muß, 
reicht auch der interne RC.

Nen Uhrenquarz braucht man nur, wenn die CPU größtenteils im Power-Down 
ist (Batteriebetrieb) und dabei die genaue Uhrzeit mitzählen muß.


Peter

von Johann (Gast)


Lesenswert?

> Nen Uhrenquarz braucht man nur, wenn die CPU größtenteils im Power-Down
ist (Batteriebetrieb) und dabei die genaue Uhrzeit mitzählen muß.

Na, vielleicht ist ja genau das die Anwendung? Ich bin immer wieder 
erstaunt, daß an anderer Leute Konzepte herumgemeckert wird, obwohl man 
sie noch gar nicht kennt.

von Oliver J. (skriptkiddy)


Lesenswert?

Peter Dannegger schrieb:
> Nen Uhrenquarz braucht man nur, wenn die CPU größtenteils im Power-Down
> ist (Batteriebetrieb) und dabei die genaue Uhrzeit mitzählen muß.

Jop. So ist es. Strom sparen heißt die Devise.

Gruß Skriptkiddy

von Peter D. (peda)


Lesenswert?

Skript Kiddy schrieb:
> Jop. So ist es. Strom sparen heißt die Devise.

Dann wär aber wichtig, welcher AVR das exakt ist.
Manche können per Fusebit Kondensatoren zum Quarz hinzuschalten.


Peter

von Oliver J. (skriptkiddy)


Lesenswert?

Peter Dannegger schrieb:
> Dann wär aber wichtig, welcher AVR das exakt ist.
> Manche können per Fusebit Kondensatoren zum Quarz hinzuschalten.
>
>
> Peter
Es ist ein ATMEGA1284p. Dachte das hätte ich geschrieben. Sorry.


So zurück zum eigentlichen Problem. Ich habe es eben mit 18pF 
ausprobiert und das brachte keine Besserung.
Nun habe ich den AVR getauscht und siehe da alles tut so, wie es 
erwartet wird. Jetzt kriegen die anderen Boards noch 18pF Cs und der Tag 
ist gerettet.

Gruß und Danke alle Skriptkiddy

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.