Quarz Dimensionierung

OP #2437783
Lesenswert?
• ▲
▼
Hallo,

ich arbeite zum Ersten mal mit einem 8051 MCU "C8051F321" und habe 
Probleme mit dem Quarz.

In meinem Programm ist Folgendes verwendet um sicher zu stellen, dass 
das Quarz funktioniert "while ((OSCXCN & 0x80) == 0);".
Leider bleibt das Program in dieser Schleife hängen.
Das Program selbst hat mit Sicherheit keine Fehler, da die Software von 
einem Referenzboard, welches ich nachdesigned habe, stammt.

Die Platine hat sicherlich auch keine kalten Lötstellen etc. da ich drei 
gleiche Platinen professionell fertigen habe lassen und bei allen das 
selbe Problem auftritt.

Ich glaube, dass entweder die Dimensionierung der Quarzschaltung oder 
das Layout das Problem ist.

Kann es ein Problem sein, dass ein Kondensator ca. 3mm und der andere 
Kondensator ca. 10mm vom Quarz entfernt ist?
Oder ist eventuell die Frequenzabweichung zu groß?

Ich hoffe dass mir jemand bei meinem Problem helfen kann.

Thomas
Angehängte Dateien:
Gast #2437815
Lesenswert?
• ▲
▼
Miss mal nach ob der Quarz tatsächlich auf der richtigen Frequenz 
schwingt.
"Spiel" mal mit den Lastkapazitäten (versuchsweise mal etwas kleiner, 12 
pF oder so. Auch 2 verschiedene Werte. Je nach Typ/ Hersteller brauchen 
die andere Lastkapazitäten.
OP #2437831
Lesenswert?
• ▲
▼
Hallo Andreas,

wie genau kann ich die Frequenz am Einfachsten messen?

Sollten die Kapazitäten nicht passen?
Laut Datenblatt des Quarzes ist der Cl Wert 16pF und der C0 Wert maximal 
5pF.
Berechnet werden die zu verwendenten Kapazitäten laut diverser Seiten im 
Internet so: (Cl-C0)*2 = 22pF

Thomas
Gast #2437852
Lesenswert?
• ▲
▼
Hast du kein Oszilloskop?
Datenblätter sind Theorie, dienen aber als Richtlinie in diesem Fall. 
Mach einfach mal die C´s kleiner so 12 pF und 15 pF wenn du hast, dann 
mal gegeneinander tauschen.
#2437857
Lesenswert?
• ▲
▼
Deine Schaltung ist Mist. Du darfst den Quarz nur an XAL1 und XAL2 
anschliessen am µC. Die zusätzlichen Verbindungen zu P1.0 und P1.1 
machen Dir das Signal vermutlich total kaputt: Normalerweise sind da 
mindestens die "Weak Pullup" dran, also 100 kOhm nach VCC. Dagegen kommt 
kein Quarzkristall an.
Trenne diese Verbindungen, und Dein Quarz sollte schwingen, wenn das 
restliche Programm OK ist. Ach ja: Das Quarzdatenblatt sagt nur was von 
Frequenzen ab 3,5 MHz während im Schaltplan 32,768 kHz steht.
#2437963
Lesenswert?
• ▲
▼
Ok, das ist ne fiese Trickschaltung, bei der man sicherstellen muss dass 
P1.0 und P1.1 auf "analog" gestellt sind, bevor man den Quarz anwirft. 
Den Trick kannte ich noch nicht: Der Comperator wird benutzt, um auf 
P1.7 (RCLK) den 32.768 Hz Takt auszugeben.

Da würde ich zuerst das Oszilloskop ranhalten - an den Quarz- Pins 
selbst könnte der Tastkopf das Signal deutlich verändern. Kritisch ist 
dann übrigens der gesamte Signalweg einschliesslich zu den P1.0 und 
P1.1. Deswegen ist ja auch ein Layout vorgegeben...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.