Wie gut ist mein Xtal-Design auf meiner Leiterplatte?

Ich entwerfe ein Board für ein Schulprojekt mit Eagle. Ich dachte, ich könnte mit der Onboard-Uhr des PIC18 davonkommen, da sie nicht viel macht (meistens nur LEDs), aber eine ihrer Aufgaben ist die RS232-Kommunikation, und ich habe (gerade) gelernt, dass die Onboard-Uhr bei weitem nicht genau genug ist für jede Art von Kommunikation. Da die RS232-Verbindung von entscheidender Bedeutung ist, muss sie funktionieren. Also hatte ich die Aufgabe, ein xtal und zwei Kappen auf meine bereits überfüllte Platine zu stopfen. Hier ist mein Ergebnis um 3 Uhr morgens:

Geben Sie hier die Bildbeschreibung ein

Ich bin sicher, ich habe so manchen erfahrenen Boarddesigner etwas ins Schwitzen gebracht. Die große leuchtende Spur ist geschliffen. Ich denke, es ist das Beste, was ich tun konnte, wenn man bedenkt, dass es absolut keinen Platz gab, um den PIC oder die beiden oberen Chips zu bewegen, und sehr wenig Platz, um den unteren zu bewegen. Das Board wird CNC-gefräst, so dass ich nicht weniger als 16 mil Leiterbahnbreite/16 mil Abstand erreichen kann. Ich habe neu angeordnet, was ich konnte, um sicherzustellen, dass OSC1 und OSC2 keine Durchkontaktierungen hatten. Die Kappen sind kleine kleine ~20pf Keramik, ich habe nur die zylindrischen Teile für den Pad-Abstand verwendet.

(Außerdem ist Blau die untere Schicht, Rot ist die Oberseite; alles muss ein Durchgangsloch sein und sich auf der Unterseite verbinden.)

Ich plane, den Chip mit 4,9152 MHz zu betreiben. Wenn es aus irgendeinem unergründlichen Grund nicht genug Geschwindigkeit ist, hätte ich gerne die Option von 7,2 MHz. Ich weiß, dass Geschwindigkeit das Design beeinflusst.

Jeder Rat wäre willkommen. Ich werde wahrscheinlich die Kappen drehen, damit die Spur zum xtal kürzer ist. Ich sehe keine Möglichkeit, einen "Erdungsring" zu haben, der vorgeschlagen wird, da kein Platz vorhanden ist.

EDIT: Hier ist ein aktualisiertes Design. Ich habe die Kappen mit einer besseren Grundfläche (immer noch Keramik) ausgetauscht, und der Mikrocontroller ist nur an einem Punkt mit der Masseebene verbunden. Die gestrichelten Linien zeigen, wo ich meinen Schutzring platzieren werde (Pins 1 und 20 des TPIC sind N / C):

Geben Sie hier die Bildbeschreibung ein

Bearbeiten 3: Fettere Spuren, bessere Abschirmung, ich denke, das ist so gut wie es nur geht:

Geben Sie hier die Bildbeschreibung ein

fast doppelte Frage: electronic.stackexchange.com/questions/41693/… Obwohl sich die frühere Frage auf ein SMT-Layout bezieht, gelten dieselben Grundprinzipien.
Dieser ist Ihrer Situation noch näher: electronic.stackexchange.com/questions/39136/…
Sie geben Ihre RS232-Geschwindigkeit nicht an, aber bei vielen Geschwindigkeiten ist der interne Kristall für die asynchrone Kommunikation geeignet.
RS232 hat höchstens 9600 Baud. Wenn sich herausstellt, dass ich es nicht brauche, kann ich es einfach unbesetzt lassen. Auf diese Weise muss ich das Board nicht neu drehen, ich kann einfach die Komponenten einsetzen und bin wieder einsatzbereit. Ich habe den Link von Photon gesehen und er war sehr hilfreich in Bezug auf die Grundebene.
@kenny Viele Leute glauben das, aber es ist falsch. Der prozentuale Fehler, den ein UART tolerieren kann, ist unabhängig von der verwendeten Baudrate.
+1 @DaveTweed (und andere) ... und Ihre Erdung ist hier ein viel größeres Problem als Ihr Clock-Routing. Das Grundlayout von #2 ist besser, aber die fetten Tracks von #1 sind besser. Filamentleiter sind bessere Hochfrequenzantennen, die eine höhere Impedanz ceteris paribus erzeugen ... aber sie funktionieren höchstwahrscheinlich in beiden Richtungen bis zu einigen MHz.
Wenn Sie nicht mit einem RTOS oder Multitasking arbeiten, bedeutet dies, dass Sie mit einem oder einer Art warten delay_ms(x)und Bit-Banged RS232 verwenden, ist der interne 8-MHz-Oszillator in Ordnung, und ich habe es getestet. Ich weiß jedoch nicht, wie sich die Leistung über die Temperaturspanne Ihres Designs ändert. Ich sage nur ... Es ist gut, dass Sie das richtige Layout lernen, und ich hoffe, Sie werden es gut lernen.
16-24 mil ist ungefähr so ​​​​fett, wie ich die Spuren mit dieser Erdungsleitung für die Kondensatoren herstellen kann, die dorthin zurücklaufen, wo sich der Mikrocontroller befindet. Ohne diese Linie kann ich sie so dick wie 40 mil machen (siehe erstes Bild). Aber den Boden der Kappen an einer anderen Stelle zu binden, würde eine große Erdschleife erzeugen, was wahrscheinlich schlimmer ist. Ich werde versuchen, Interrupt-Services so oft wie möglich durchzuführen, anstatt delay_ms(x)
Sie brauchen einen Boden * gießen * / füllen. Es gibt viele Referenzen hier auf electronic.SE oder Google. Rückstrom auf Schienen zu leiten ist keine gute Idee mehr. Suchen Sie nach "2-Layer-PCB-Layout-Strategie" (oder einer Permutation).

Antworten (1)

Ich sehe ein paar Probleme mit Ihrem Design:

  1. Eine der Kappen berührt den Kristall physisch. Bewegen Sie es nur ein wenig weg

  2. Bewegen Sie den Kristall nach oben, so dass er so nah wie möglich am PIC18 ist.

  3. Machen Sie Platz für den Schutzring. Von dem, was ich auf dem Bild sehe, können Sie wahrscheinlich einige Dinge bewegen, um es näher zu bringen.

  4. Stellen Sie sicher, dass das Kristallgehäuse selbst mechanisch geerdet ist (löten Sie es nicht irgendwie gewaltsam).

  5. Ändern Sie die Kondensatoren für den Kristall auf Keramik. Dadurch werden sie kleiner und es macht hier keinen Sinn, elektrolytisch zu werden.

Die Realität ist, dass die Schaltung sogar in ihrem aktuellen Zustand funktionieren wird. Es geht also nicht darum, ob es funktioniert, sondern ob Sie die beste Leistung, den saubersten Takt, niedrigere EMI usw. erhalten.

Das Folgende ist eine App-Notiz darüber, wie man Kristalle am besten anordnet:

AVR186: Best Practices für das PCB-Layout von Oszillatoren

Bezüglich 1 und 5 waren die Kondensatoren immer Keramik, ich habe wegen des Padabstands nur einen elektrolytischen Footprint in Eagle verwendet. Ich habe ein besseres Teil gefunden und durch dieses ersetzt. Ich weiß nicht, wie ich den Kristall erden soll, es sei denn, ich habe ein Erdungspad auf der obersten Schicht ... ist das richtig?
Sie müssen einen Schutzring um den Kristall vom GND-Pin der Platine bauen. Den Fall zu erden, wird Sie nicht über Erfolg oder Misserfolg bringen. Legen Sie einfach eine Spur, die nicht mit Lötstopplack bedeckt ist, unter das Gehäuse, damit sie mechanisch mit dem Gehäuse selbst in Kontakt kommt, und seien Sie dann beim Löten vorsichtig, damit sie Kontakt herstellt.
In Ihrem zweiten Bild haben Sie den Kristall noch nicht so nah wie möglich am Mikrocontroller platziert. Das wird funktionieren, aber es ist nicht das beste Design. Für Ihre Anforderungen könnte es dennoch gut genug sein.
Das ist so nah wie ich es bekommen kann. Es gibt keinen Abstand zwischen den Chips für das Xtal, die Kappen, den Schutzring und eine Erdungsleitung bei 16 mil. Bessere Erdung und EMF-Schutz klingen wichtiger, als nur um Bruchteile eines Zolls näher zu sein.
Näher zu sein bringt bessere Erdung und EMF-Schutz :D Wenn das alles ist, was Sie tun können, dann ist das alles, was Sie tun können. Es hat keinen Sinn, eine trockene Orange für Saft auszupressen.