Guten Abend zusammen, nach unendlichem Suchen in Foren und testen aller Möglichkeiten frage ich nun doch mal in die Runde. Wie schon zu lesen, habe ich Probleme mit dem Quarz. µC ist ein PIC18F4550, Quarz 20Mhz mit je 22pF, Abstand Quarz-µC ca. 7-8mm, Kondensatoren mittlerweile direkt an die µC-Sockel-Pins gelötet. Je nachdem, ob und wo man die Platine oder die Sub-D Buchse (Gehäuse an GND) anfasst hört der Quarz plötzlich auf zu schwingen, schwingt auf etwa 200Hz oder macht sonstige wilde Sachen. Stromversorgung über Spannungsregler oder USB. Die Config-register sind m.E. alle in Ordnung, das ganze hat auf anderen Platinen bereits besser, teils sogar absolut problemlos funktioniert. Ich hoffe, mit ist noch zu helfen... Viele Grüße Ron
Der Klassiker: Du hast schön beschrieben, was deiner Meinung nach alles richtig gemacht wurde. Zu den möglicherweise falschen Sachen hast du gar nichts geschrieben, keine Fotos, keine Quelltexte, nada. Wo sollen wir suchen, in einer Glaskugel? Zeige uns alles, was du nicht geprüft hast!
Poste bitte mal Bilder vom Aufbau und vom Schaltplan. Dann sehen wir vielleicht wo der Fehler ist.
Hallo zusammen, wenn ich selber Ideen hätte, woran es liegen könnte, würde ich ja einfach nachlesen. Aber die Ideen fehlen mir langsam. Diesmal also mit Schaltplan, Layout (die Füllung hab ich mal entfernt, dass es besser erkennbar ist), zwei Bildern von der Platine und dem main.c. In main.h sind nur Funktionen definiert. Wie auf der Unterseite der Platine zu sehen, habe ich die 22pF Kondensatoren bereits von Ihrer eigentlichen Position direkt an den Sockel versetzt. Vielleicht hat ja so jemand eine Idee. Viele Grüße, Ron
Hast du mal nachgemessen ob der Quarz oder seine Verbindung zum Controller, eine Verbindung zu den Kupferfläschen um den Quarz herum hat ? Da sollte kein Widerstand zu messen sein.
Ich sehe nur sehr dünne und verästelte GND-Verbindungen. Dadurch ist das ganze Gebilde instabil. Du hast außenherum viel Kupfer. Mach daraus eine GND-Fläche und verbinde die verteilten GNDs per Draht auf diese Fläche.
Den C1 verdoppeln. C1A direkt an Pins 11 und 12, zweiten C1B direkt an Pins 31 und 32. Messen ob Gnd und Vcc wirklich dort vorhanden ist. Anderen Quarz probieren, der könnte auch defekt sein. Gruss
Danke für die Hinweise, aber sie führen noch nicht zum Ziel. Pin 12 ist ohne nennenswerten Widerstand mit Masse verbunden, Die Leitungen vom Quarz haben kein (auch keine hochohmigen) Verbindung zu irgendwas drumherum. Bei engesteckten µC sind die beiden Quarz-Anschlüsse mit etw 3MOhm mit Masse verbunden, ohne µC offen. Grüße
Also die HW is es nich, die SW schon mal gleich garnicht.... Soll das etwa heißen ICH WARS? ... Auf den Poden mit dem Purschen!
Oh, jetzt bemerke ich gerade, dass ich den Hinweis von Erich übersehen habe. Ich werde das evtl. heute noch, sonst morgen abend ausprobieren. danke.
Sodele... Zwischenzeitlich habe ich zwei 100nF Kondensatoren, die beide direkt an den Füßchenhängen. Die Kupferflächen sind mit GND verbunden und insb. die Anschlüsse in der Nähe des Quarz' alle nochmal mit den Kupferflächen verbunden, sodass da jetzt alles doppelt und dreifach ist. Den Quarz hab ich mal noch getauscht. Was mir noch aufgefallen ist, ist dass bei den einschlägigen Versandhändlern für 20Mhz Quarze Kapazitäten von 10 bis 32pF angegeben sind. Unter der Bestellnummer, von der mein verwendeter Quarz stammt, sind 32pF angegeben. Siehe https://www.reichelt.de/standardquarz-grundton-20-000000-mhz-20-0000-hc49u-s-p32853.html?&trstct=pos_0&nbc=1 Alles das hat die Situation nicht verbessert, es ist irgendwie wieder alles beim alten geblieben. Grüße
Vielleicht stimmen die Kondensatoren an dem Quarz nicht. Kannst du die messen ? Sonst nimm mal andere nicht die selben die du gekauft hast. Vielleicht haben die sich bei der Bestellung vertan und sind andere Werte als drauf steht auf der Tüte.
32pF sind eher was für 32kHz! Nimm mal 15pF, die restlichen pFs bringt der PIC schon von Haus aus mit. Wie viel, sollte eigentlich im Dabla stehen, nur ich finds nich... oder es fehlt mal wieder.
Ron S schrieb: > Hallo zusammen, > wenn ich selber Ideen hätte, woran es liegen könnte, würde ich ja > einfach nachlesen. Aber die Ideen fehlen mir langsam. Mir kommt da bei deinen 2 Kondensatoren ein übler Verdacht: nämlich daß das 22 nF sind und keine 22 pF. W.S.
Teo D. schrieb: > 32pF sind eher was für 32kHz! Nö, eigentlich nicht. Bei den üblichen Uhrenquarzen sind recht häufig so etwa 10 pF in Mode. W.S.
W.S. schrieb: > Mir kommt da bei deinen 2 Kondensatoren ein übler Verdacht: nämlich daß > das 22 nF sind und keine 22 pF. Das sind definitiv 22pF. Der schwarze bedeutet Keramik NP0 und so klein gibt es da keine 22nF.
Ich hatte bei PICs noch nie Probleme mit HF-Quarzen von 4 - 24.5 MHz. Selbst auf Lochraster und mit einer IC-Fassung fuer den Quarz nicht. Ich wuerde ja noch mal die PIC-Konfig pruefen, die Koendensatoren gegen anderre tauschen und zu allerletzt noch das Quarzgehaeuse mal auf Ground legen.
Testweise einen 1M Widerstand parallel zum Quarz schalten, dann schwingt der besser an.
Ron S schrieb: > die Füllung hab ich mal entfernt Hast du da einfach nur so gedankenlos potentialfreies Kupfer geflutet? Das ist ja noch schlimmer als der Rest der gedankenlosen Kupferfluter, die wenigstens noch Masse auf dieses Kupfer legen... Ich kann da insgesamt keinerlei brauchbare Versorgungsstruktur erkennen. Welche Spannung kommt da tatsächlich noch an den Versorgungspins des µC an? Ron S schrieb: > das ganze hat auf anderen Platinen bereits besser, > teils sogar absolut problemlos funktioniert. Ja, dann wissen wir ja, woran es liegt. Beim nächsten Anlauf sorgst du zuallererst für eine stabile und gute Versorgung mit breiten Leiterbahnen bei Vcc und GND. Du sorgst für eine Versorgung, die auch funktioniert, ohne dass man Taster als Brücken bestücken muss. Und so ein gutes Versorgungslayout schafft der Autorouter alleine eben nicht. Du musst da vorlegen und mithelfen. > teils sogar absolut problemlos Es muss immer problemlos funktionieren. BTW: bei passender PAD-Geometrie passt locker noch eine Signalleiterbahn zwischen zwei 1/10-Zoll Pins durch. Das entspannt das Layout ziemlich.
:
Bearbeitet durch Moderator
Fehlt da nicht GND bei den Kondensatoren? Dir Fläche ist ja gar nicht verbunden
Wofür brauchts den Quarz überhaupt? Langt der interne Oszillator nicht?
Chris schrieb: > Dir Fläche ist ja gar nicht verbunden Sag ich doch: das Kupfer ist potentialfrei. Die Masse und die gesamte Versorgung ist über eine ca. 0,4 mm breite Leiterbahn geführt. Sieh das Layout an. Jimi H. schrieb: > Langt der interne Oszillator nicht? Oder andersrum: tut wenigstens der?
:
Bearbeitet durch Moderator
Lothar M. schrieb: > Beim nächsten Anlauf sorgst du zuallererst für eine stabile und gute > Versorgung mit breiten Leiterbahnen bei Vcc und GND. ... wobei es sinnvoll ist, (bei begrenztem Platz) den GND massiver zu machen als Vcc. Begründung: Vcc kann man mit Kondensatoren auf dem "Fundament" GND abstützen. Das ist wie beim Hausbau: das Fundament sollte massiv sein, das Dach darf dagegen "schlabberiger" sein, denn man kann es mit Pfeilern an mehreren Stellen auf dem Fundament abstützen.
Dietrich L. schrieb: > ... wobei es sinnvoll ist, (bei begrenztem Platz) den GND massiver zu > machen als Vcc. Weil sich die Datenblätter der meisten Bauteile eben auf den GND beziehen. Das Thema nennt sich übrigens "Ground Bouncing". Auf der Vcc-Schiene nennt sich das selbe Problem dann "Vcc Sag": https://de.wikipedia.org/wiki/Ground_bounce > Begründung: Die ist zwar anschaulich, greift allerdings zu kurz, weil bei einem wirklich guten Layout Vcc und GND wechselstrommäßig das selbe Potenatial haben sollten. Überall. So wie bei einem Haus das Dach durchaus auch um 5cm nach unten gehen sollte, wenn das Fundament 5cm nach unten geht. Oder das Dach sich bei solidem Fundament nicht unnötig weit von der vorgesehenen Stelle entfernen sollte. Konradi schrieb: > ich sehe auf dem Foto keinen Quarz. Du siehst die Beine vom Quarz. Der Quarz selber ist unter dem dicken DIL-Gehäuse. Das erkennt man leicht im Layout.
:
Bearbeitet durch Moderator
Das Problem kenn ich auch, ich habe den gleichen Ärger mit verschiedenen Atmegas kontrollern und habe dann einen Externen Quarzoszillator eingesetzt z.B. CFPS-72 oder CFPS-69 die gibt es mit fast allen Frequenzen Gruß Martin
Nochmal hallo zusammen, Zu den Kondensatoren: Mein Multimeter kann zwar keine Kapazität messen, aber mit auf jeden Fall richtigen 1nF und einem einfachen Filter mit dem Rechtecksignal vom Oszilloskop ist klar, dass das mit den 22pF schon hinkommt. Auf die potenzialfreie Kupferfläche werde ich in Zukunft achten und sie konsequent mit GND verbinden. Ich würde aber ungern komplett darauf verzichten, da dadurch der Verbrauch an Ätzlösung doch massiv verkleinert wird. Den Tipp mit den Versorgungsleitungen werde ich auch zu Herzen nehmen, wobei ich in diesem speziellen Fall, wo kaum Last anliegt eigentlich nicht davon ausgehe, dass das das Problem ist. Spannung an den Versorgungspins des µC ist etwa 5,1V und ändert sich in den ersten zwei Nachkommastellen auch nicht mit dem ein-/ausschalten der größten "Verbraucher" (=LEDs). Zu den sonstigen Themen Layout möchte ich zu Protokoll geben, dass ich alles von Hand entworfen habe, aber ich das eben nirgends "richtig" gelernt habe. Ich werde mir die Punkte bei folgenden Projekten merken. Die Brücken sind teilweise notwendig, da ich nicht beidseitig ätzen kann. 0,4mm sind im Moment auch das kleinste was ich ohne Probleme ätzen kann. GND liegt an den Kondensatoren an. Zu den vorschlägen mit internem Oscillator/ externer Taktquelle: Ich bekomm das schon damit zum Laufen, aber es muss ja schließlich auch so wie im Datenblatt beschrieben möglich sein. Bei USB bräuchte ich zumindest eine externe Taktquelle, wobei ich mich mit dem Thema noch nicht wirklich beschäftigt habe. Die Config Register kann gerne jemand überprüfen, der davon mehr Ahnung hat, aber ich bin der Meinung dass das so mit dem Datenblatt passt. Ich werde bei Gelegenheit ein neues Layout entwerfen und einen neuen Versuch starten. Das wird aber nicht so schnell passieren, da ich im Moment ziemlich beschäftigt bin. Viele Grüße Ron
Ron S schrieb: > Die Config Register kann gerne jemand überprüfen, der davon mehr Ahnung > hat, aber ich bin der Meinung dass das so mit dem Datenblatt passt. Wieder nimmst du und die Chance dir zu helfen, weil du es nicht für nötig erachtest, und etwas zu zeigen. Wenn du alles richtig gemacht hast, hast du kein Problem.Du hast aber ein Problem, also hast du etwas falsch gemacht. Je mehr du uns zeigst, umso gründlicher können wir prüfen und dir helfen. Was deine Messung der Versorgungsspannung angeht: Die ist so sinnlos. Bei Mikrocontrollern geht es um ganz kurze Impulse im Nanosekunden-bereich, die kann dein Multimeter nicht erfassen. Und weil sie so kurz sind, spielen die HF Eigenschaften (Induktivität, Kapazität, Wellenwiderstand, Reflexionen) eine Millionenfach größere Rolle als bei DC.
Okay. Meines Erachtens nehme ich die Möglichkeit, mir helfen zu lassen nicht, da der Code bereits in diesem Thread gepostet wurde (bei den Bildern und Layouts). Die Spannungsversorgung habe ich nun mit dem Oszilloskop gemessen, was die ganze Sache vielleicht doch noch retten könnte. Ich messe eine stark gefilterte Rechteckspannung mit etwa 0,08V und einer Frequenz von grob 0,5MHz, wobei die Frequenzmessung bei der Amplitude und dem Hameg 203,5 gar nicht so einfach ist. Ich habe mich schon oft gefragt, warum in solchen Foren immer so eine negative Grundstimmung herscht. Aber das ist eine andere Frage und gehört nicht hierher. Jedenfalls bedanke ich mich trotzdem auch für diesen Hinweis, der vielleicht zum Erfolg führt. Die passenden Maßnahmen wären also ein neues Layout mit Flächen an GND, breiteren und weniger verästelten Zuleitungen zu den Versorgungspins und Kondensatoren noch näher am µC. Hab ich noch was wichtiges vergessen? Grüße
Ron S schrieb: > Ich habe mich schon oft gefragt, warum in solchen Foren immer so eine > negative Grundstimmung herscht. Wegen Corona - das ist an allem Schuld. Ich muss mich entschuldigen, ich hatte einfach angenommen dass mit "Config Register" so etwas wie die Fuses bei AVR gemeint sind, die üblicherweise nicht im Quelltext stehen. Aber bei dir stehen die Werte ja direkt im Quelltext. Also alles OK, ich nehme den Vorwurf zurück.
Ron S schrieb: > Hab ich noch was wichtiges vergessen? Du hast unglaublich viele Inseln, die ohne Potential sind. Da geht HF eigene Wege. Dort Luft lassen, oder (besser) diese Flächen an Masse oder Vcc anbinden. Lothar M. schrieb: > Lass dein Layout vor dem Ätzen sehen...
Ron S schrieb: > Die passenden Maßnahmen wären also ein neues Layout mit Flächen an GND Bevor du ein neues Layout machst: Du kannst auch testweise alle GND-Anschlüsse mit "ordentlichen" Drahtbrücken auf der Kupferseite mit der außen herum vorhandene große Kupferfläche verbinden (dazu gibt es so schönen versilberten Kupferblankdraht). Wenn es dann keine Probleme mehr gibt weißt du jedenfalls, dass es daran liegt und nicht noch woanders was faul ist.
Ron S schrieb: > Hab ich noch was wichtiges vergessen? Den Quarz würde ich nicht unter dem IC setzen, momentan liegt der sicherlich plan auf der Leiterplatte auf und von oben drückt noch das IC dagegen. Setze den lieber nach aussen und lasse dem noch 1-2mm Luft nach unten beim Einlöten.
Sind die "anderen" Platinen 100% gleich oder nur ähnlich? Ich würde es einfach mal mit dem internen Oszillator versuchen. => kann man das Teil programmieren und es läuft prinzipiell? Im nächsten Schritt beide Oszillator-Pins toggeln; => die HW im PIC ist sicher OK? Auf die Kondensatoren am Quarz würde ich erstmal verzichten, weniger ist da mehr. Du kannst auch zum Testen ein TTL Signal von einem Quarz-Oszillator oder anderem PIC nehmen.
:
Bearbeitet durch User
Dietrich L. schrieb: > (dazu gibt es so schönen versilberten > Kupferblankdraht) Ähem... so ein Draht ist eigentlich zum Wickeln von Spulen mit hohem Q gedacht und nicht in erster Linie zum Anschließen von vergessenen Masseflächen. W.S.
Ron S schrieb: > Hab ich noch was wichtiges vergessen? a) Die beiden 100 nF direkt an die uC Pins, wie schon geschrieben. b) Masse und +5V mind. in doppelter Breite gegenüber bisher, v.a. vom Spannungsversorgungsstecker zu den BEIDEN uC Anschlüssen. c) Masse kann dabei flächig sein. d) Ein weiterer Kondensator, Typ Elko oder Tantal, Wert 10V / 100 uF in der Nähe des Spannungszuführung. > Lass dein Layout vor dem Ätzen sehen... wurde bereits empfohlen. Gruss
W.S. schrieb: > Dietrich L. schrieb: >> (dazu gibt es so schönen versilberten >> Kupferblankdraht) > > Ähem... so ein Draht ist eigentlich zum Wickeln von Spulen mit hohem Q > gedacht .... Aha, mit einem "hohem Q"! Steht hier Q für Qurzschluss?
W.S. schrieb: > Ähem... so ein Draht ist eigentlich zum Wickeln von Spulen mit hohem Q > gedacht und nicht in erster Linie zum Anschließen von vergessenen > Masseflächen. Mag sein, ich benutze aber auch gerne Silberdraht, weil man ihn lange lagern kann ohne dass er stören Oxidiert.
W.S. schrieb: > Ähem... so ein Draht ist eigentlich zum Wickeln von Spulen mit hohem Q > gedacht und nicht in erster Linie zum Anschließen von vergessenen > Masseflächen. Dann zähle ich mich zur zweiten Linie und bin mit diesem Draht glücklich ;-)
OK, fassen wir mal Deine Anforderungen zusammen: 1. Einseitiges Layout. Oben nur Brücken mittels Kupferdraht. 2. Überall 0,4mm Isolationsabstand. (Ist das als Regel eingepflegt?) Da wird wohl dann irgendwo eine GND-Verbindung fehlen, nehme ich an. Weil 5V mit Leiterbahnen explizit durch das Board verlegt ist. GND wird implizit "verlegt" über eine GND-Fläche, die über die gesamte Unterseite geht. Ich denke, da ist irgendwo eine GND-Verbindung offen. In der Tat wird es schwierig werden, da den wirklichen Verursacher für das nicht-anschwingen zu finden. Darum denke ich auch, Du solltest das Layout nochmal neu machen. Meine Empfehlung für ein neues Layout wäre wie folgt: 1. Platzieren aller Bauteile. Vermeide es bitte, Bauteile unter anderen Bauteilen zu platzieren. 2. Routen der Spannungsversorgung. 2. Routen von USB D+ und D-. Abgleichen auf dieselbe Länge. 3. Routen aller anderen Signale. Wenn man das in Schritten macht, wird es funktionieren. Gibt es Restriktionen? Zum Beispiel eine Platzierung der Buchsen/Stecker und LEDs etc. nach außen hin? Oder ist alles frei wählbar? Beim USB wird es so sein, dass die 120 Ohm für das Differential Pair nicht eingehalten werden können bzw. nur mit sehr breiten Leiterbahnen. Für eine doppelseitige Leiterplatte sind das so um die 1,2mm, wenn ich mich noch recht erinnere. Lässt sich aber machen, wenn der USB-Stecker möglichst nah an den Microcontroller platziert wird. Wenn die USB-Schnittstelle nur mit 12MBit läuft, also als Ersatz für eine RS232-Schnittstelle, braucht das nicht so genau zu sein. Aber auf Länge abgleichen und etwas separiert von den anderen Leitungen wäre schon gut. Und möglichst kurz. Viel Erfolg!
Hallo, mich würde interessieren, was daraus geworden ist. Lies sich das Problem finden? War dazu der Aufbau einer neuen Platine nötig? Gruss
Hallo zusammen, mittlerweile habe ich endlich mal wieder die Zeit gefunden, mich mit dem Thema zu beschäftigen. Ich bedanke mich auf jeden Fall für die Hinweise,insb. zum Thema Layout. Nachdem ich diese Themen beim neuen Layout zu Grunde gelegt habe hat das ganze nun zufriedenstellend funktioniert. Viele Dank an alle Beteiligten und eine gute Zeit! Ron
Lothar M. schrieb: > Ron S schrieb: >> Hab ich noch was wichtiges vergessen? > Lass dein Layout vor dem Ätzen sehen... Tja, die Hoffnung stirbt zuletzt und den Versuch wars wert. Ron S schrieb: > nun zufriedenstellend funktioniert. Das gibt mir zu denken, denn manchmal verwundert es mich, mit wie wenig Menschen zufrieden sind...
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.