Hallo, ich habe hier ein Problem, welches ich alleine nicht unter Kontrolle bekomme. Ich habe hier einen Atmega 328p in Grundbeschaltung. Abblockkondensatoren 100N für jeden Pin, 10K Reset Pullup, VCC und Reset sind ok von der Oszilloskop-Messung her. Verbindungen zu GND und VCC sind kurz und gut. Als Quarz/Resonator dient ein Murata CSTCE16M0V53-R0 (http://de.farnell.com/murata/cstce16m0v53-r0/keramikresonator-16mhz-smd/dp/2443265?ost=2443265). Routing auch hier so kurz und direkt, wie es geht (wie beim Arduino UNO). Wie beim Arduino UNO habe ich einen 1 MOhm Lastwiderstand zwischen die XTAL-Leitungen gehängt. Auch ohne den Lastwiderstand tritt das Problem auf. Die Fuses sind low=0xff high=0xde und ext=0x05. Betreibt man die CPU mit dem internen Oszillator tritt das Problem nicht auf. Mit Oszillator hört dieser nach etwa 8-10h auf zu schwingen. Macht man dann die Lötstellen heiß (von Quarz und die entsprechenden an der CPU), geht es wieder für ein paar Minuten. Sprühe ich es gleich mit Eisspray ein, überlebt die Schaltung das (strauchelt vielleicht mal, wenn das Wasser kondensiert). Mittlerweile suche ich seit einigen Tagen nach dem Problem und es macht sich Verzweiflung breit, weil ich das zum laufen haben muss... Bin für jede Hilfe dankbar! Christoph
Hi Christoph, stelle bitte hochauflösende Bilder und auch deinen Schaltplan ein. Dann kann man vielleicht etwas sagen.
Hallo, noch einen Anmerkung einen Quarz hast Du nicht verbaut, deshalb muss die Beschaltung auch anders sein.
Christoph N. schrieb: > Mittlerweile suche ich seit einigen Tagen nach dem > Problem und es macht sich Verzweiflung breit, weil ich das zum laufen > haben muss... Das verstehe ich nicht. Das 20 ct Teil ist in einer Minute gewechselt und dann ist gut. Keramische Resonatoren sind etwas für große Stückzahlen, wo es auf den Preis ankommt. Gut, sie schwingen auch ein bißchen schneller an. Beim Arduino Uno sorgen die Resonatoren nur für kräftige Frequenzschwankungen, m.E. völlig daneben, zumal ein 16 MHz Quarz an anderer Stelle eingebaut ist. Aber warum verwendet man diese freiwillig und ohne Not?
Christoph N. schrieb: > Als Quarz/Resonator dient ein Murata CSTCE16M0V53-R0 [...] > Die Fuses sind low=0xff high=0xde und ext=0x05. Ändere das in: low=0xf7 high=0xde und ext=0x05.
Also, erst mal Bilder und Schematic anbei. Zuvor hatte ich Quarze verwendet, die Schaltung hatte so etwa 2 Jahre Funktioniert und fing dann an Ärger zu machen (neue Charge MCUs?). Also habe ich versucht, das Design so abzuändern, dass es so ist, wie ein als funktionierend bekanntes Design.
Geändert, musste dazu wieder die Lötstellen heiß machen. Habe ein Testprogramm, welches einfach nur hoch zählt, dass läuft jetzt.
Wenn ich das richtig sehe, sind da sehr viele Flußmittelrückstände. Beseitige die mal mit Alkohol. Vielleicht hilft's!? Ansonsten ist das eh' gute Praxis.
Hab die Platine gerade auch noch mal gewaschen.
Also so recht einleuchten tut mir die ganze Darstellung noch nicht. Ich fasse mal zusammen, was bis jetzt an Fakten genannt wurde. 1. Es wird ein Keramikresonator anstelle eines Quarzes verwendet. 2. Die Schaltung soll (dazu später) wie die eines Arduino Uno sein. 3. Der Grund dafür ist eine bei CPU-Wechsel aufgetretene unaufgeklärte Fehlfunktion. Zu 1. Ich habe es noch nicht selbst versucht, sondern immer nur Quarze verwendet, aber ein Keramikresonator geht wohl. Siehe: https://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment Soweit so gut. Ich habe allerdings gelinde Zweifel, dass jeder Keramikresonator gleich gut geeignet ist und auf gleiche Weise angeschlossen werden kann. In der Hauptsache fehlt mir in Deinem Beitrag, die Verifikation dieser Tatsache. Zu 2. Mal abgesehen von "Arduino", denen ich höchstens soweit traue wie ich sie werfen kann (also max. den Weg zum Schrotteimer): Ich habe auf Anhieb wenigstens zwei verschiedene Schaltpläne vom Uno gefunden. Hier: http://www.arduino.cc/en/uploads/Main/arduino-uno-schematic.pdf und hier: http://www.arduino.cc/de/uploads/Main/Arduino_Uno_Rev3-schematic.pdf In der ersten Version wird noch ein Keramikresonator verwendet. Allerdings mit einem 27 Ohm Serienwiderstand. Warum fehlt der bei Dir? Angesichts der Tatsache, dass Resonatoren sich elektrisch ein wenig anders Verhalten (sic) als Quarze auch nicht verwunderlich. Aber das führt auch wieder zurück zu der Frage ob und wie denn die Verwendbarkeit Deines Resonators hier überprüft wurde. In der dritten Version (dem zweiten von mir verlinkten File) wird auch kein Resonator mehr verwendet sondern ein Quarz. Das wird sicher seinen Grund haben, meinst Du nicht auch? 3. Was uns nun zu Punkt 3 führt: Zum einen ist unklar, warum denn nun die Schaltung auf einmal nicht mehr mit Quarz geht. Es mag sein, dass Du den Grund kennst. Aber aufgeschrieben hast Du nur eine unklare Vermutung. Was den Eindruck erweckt, dass Du aus keinem tatsächlichen Grund nun das Design ändern willst. Da fehlt eine Analyse des Problems. Und die kommt vor einem Redesign. Tatsächlich verwenden seit Jahrhunderten :-) die meisten ohne Probleme einen Quarz. Warum soll das nun gehen? Einfach weil es anders ist? Ich bin mir nicht ganz sicher, was da eigentlich los ist: Bist Du nun ein Profi Embedded-Entwickler mit Erfahrung in SW und HW oder eine Hobby-Bastler oder ein Anfänger? Platine und Mikroskopfoto deuten auf Profi. Oder auch Bastler mit viel Geld. Alle drei Varianten sind durchaus achtenswert - darüber nichts schlechtes. Aber die Frage wäre interessant. Denn wenn Du ein Profi bist, dann hast Du die Analyse nur nicht hingeschrieben und alles ist OK. Aber als Bastler oder Anfänger solltest Du die Ursache auch klarmachen und die Argumentation warum es mit einem Resonator auch besser gehen soll. Was hier nämlich auch fehlt, ist die Erklärung, warum man statt einem Quarz, der wesentlich genauer ist, einen Resonator verwenden sollte (mal abgesehen von dem Grund der oben nicht genannt wurde). Klar, was hier nicht stimmt?
Klaus schrieb: > In der dritten Version (dem zweiten von mir verlinkten File) wird auch > kein Resonator mehr verwendet sondern ein Quarz. Das wird sicher seinen > Grund haben, meinst Du nicht auch? Du mußt Dir die Beschaltung des rechten µC ansehen; der linke ist nur für USB zuständig. Mit 2 x 22 pF und Quarz läuft bei mir jeder ATmega oder Tiny jahrelang und nicht nur 10 Stunden ;-)
Wofür braucht man denn einen Lastwiderstand oder Serienwiderstand? Das mit der Hitze und Kühlen hab ich null verstanden. Laut Datasheet sieht das ja so wie im Anhang aus.
Ups. Ich habe übersehen, das in beiden Revision für den 328P ein Resonator verwendet wird. Jedenfalls, wenn sowohl mit Quarz als auch mit Resonator Probleme auftreten, dann ist da was grundsätzlich faul.
Hallo Klaus, vielen Dank für Deine umfangreiche Antwort. > 1. Es wird ein Keramikresonator anstelle eines Quarzes verwendet. Das ist richtig. Die Entscheidung auf den Resonator umzusteigen, rührt daher, dass der zuvor verwendete Quarz (http://de.farnell.com/epson/q24fa20h00044-fa-20h-16-mhz-9-0pf/quarz-fa-20h-16mhz-10ppm-9pf/dp/1712814?ost=1712814) Ärger machte. Der Grund dafür ist in der Tat unklar. Also habe mit dem Quarz versucht, die Probleme unter Kontrolle zu bekommen (Routing, andere Kondensatoren, bessere Masse) - ohne Erfolg. Ich erinnerte mich an eine kleine Platine Namens Openlog von Sparkfun, die eben diese Murata-Resonatoren verbaut hatten. Leicht zu routen, Kondesatoren schon drin, idiotensicher - dachte ich. > 2. Die Schaltung soll (dazu später) wie die eines Arduino Uno sein. Weil die (weil ich nicht erkannt hatte, dass es sich bei dem einen um einen Quarz handelt und beim anderen nicht) Schaltung mit Murata im UNO ja funktionierte, habe ich versucht das nachzumachen. > 3. Der Grund dafür ist eine bei CPU-Wechsel aufgetretene unaufgeklärte > Fehlfunktion. Korrekt. Das Bauteil hat ca. 2 Jahre funktioniert, dann wurde die CPU durch falsche Spannung zerschossen. Ab da (als ich die neuen CPUs verwendete (AU und AN Typen) gingen die Probleme los. > Zu 1. Ich habe es noch nicht selbst versucht, sondern immer nur Quarze > verwendet, aber ein Keramikresonator geht wohl. Siehe: > https://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment > Soweit so gut. Ich habe allerdings gelinde Zweifel, dass jeder > Keramikresonator gleich gut geeignet ist und auf gleiche Weise > angeschlossen werden kann. In der Hauptsache fehlt mir in Deinem > Beitrag, die Verifikation dieser Tatsache. Genauigkeit sollte reichen. > Zu 2. Mal abgesehen von "Arduino", denen ich höchstens soweit traue wie > ich sie werfen kann (also max. den Weg zum Schrotteimer): Ich habe auf > Anhieb wenigstens zwei verschiedene Schaltpläne vom Uno gefunden. Hier: > http://www.arduino.cc/en/uploads/Main/arduino-uno-schematic.pdf und > hier: > http://www.arduino.cc/de/uploads/Main/Arduino_Uno_Rev3-schematic.pdf > > In der ersten Version wird noch ein Keramikresonator verwendet. > Allerdings mit einem 27 Ohm Serienwiderstand. Warum fehlt der bei Dir? > Angesichts der Tatsache, dass Resonatoren sich elektrisch ein wenig > anders Verhalten (sic) als Quarze auch nicht verwunderlich. Aber das > führt auch wieder zurück zu der Frage ob und wie denn die Verwendbarkeit > Deines Resonators hier überprüft wurde. Das ist eine Tatsache, die mir bis jetzt noch nicht aufgefallen ist. Vielen Dank. Ich hatte es in der Zwischenzeit gestern auch mit dem 27R Serienwiderstand in XTAL1 versucht, hat auch nicht geklappt. > In der dritten Version (dem zweiten von mir verlinkten File) wird auch > kein Resonator mehr verwendet sondern ein Quarz. Das wird sicher seinen > Grund haben, meinst Du nicht auch? Ohoh... > > 3. Was uns nun zu Punkt 3 führt: > Zum einen ist unklar, warum denn nun die Schaltung auf einmal nicht mehr > mit Quarz geht. Es mag sein, dass Du den Grund kennst. Aber > aufgeschrieben hast Du nur eine unklare Vermutung. Was den Eindruck > erweckt, dass Du aus keinem tatsächlichen Grund nun das Design ändern > willst. Da fehlt eine Analyse des Problems. Und die kommt vor einem > Redesign. Tatsächlich verwenden seit Jahrhunderten :-) die meisten ohne > Probleme einen Quarz. Warum soll das nun gehen? Einfach weil es anders > ist? Das ist die Frage, die ich nicht beantworten kann. Ich habe alles nach den "Regeln der Kunst" korrekt zu machen. > > Ich bin mir nicht ganz sicher, was da eigentlich los ist: Bist Du nun > ein Profi Embedded-Entwickler mit Erfahrung in SW und HW oder eine > Hobby-Bastler oder ein Anfänger? Platine und Mikroskopfoto deuten auf > Profi. Oder auch Bastler mit viel Geld. Alle drei Varianten sind > durchaus achtenswert - darüber nichts schlechtes. Aber die Frage wäre > interessant. Denn wenn Du ein Profi bist, dann hast Du die Analyse nur > nicht hingeschrieben und alles ist OK. Aber als Bastler oder Anfänger > solltest Du die Ursache auch klarmachen und die Argumentation warum es > mit einem Resonator auch besser gehen soll. Ich habe Technische Informatik studiert, bin von meiner Ausbilung her also eher aus dem SW-Bereich. Habe aber die letzten Jahre sehr viel HW gemacht, auch im Hobby und habe daher z.b. ein Mikroskop zuhause. Tatsächlich habe ich die Arbeit (die HW wird "professionell" an einer Forschungseinrichtung gebraucht) mit nach hause genommen, um das Problem unter Kontrolle zu bekommen. > > Was hier nämlich auch fehlt, ist die Erklärung, warum man statt einem > Quarz, der wesentlich genauer ist, einen Resonator verwenden sollte (mal > abgesehen von dem Grund der oben nicht genannt wurde). Ganz ehrlich: Weil ich von HF-Design soviel Ahnung habe, wie eine Kuh vom tanzen und mir der Unterschied nicht aufgefallen ist :-( > Klar, was hier nicht stimmt? Es dämmert mir, vielen Dank für Deinen Beitrag!
Klaus schrieb: > In der ersten Version wird noch ein Keramikresonator verwendet. > Allerdings mit einem 27 Ohm Serienwiderstand. Warum fehlt der bei Dir? Dieser Serienwiderstand ist wichtig. Und die C sollten mindestens doppelt groß sein. Und ausfallen tun sie auch mehr als Quarze.
Philipp K. schrieb: > Wofür braucht man denn einen Lastwiderstand oder Serienwiderstand? > Das mit der Hitze und Kühlen hab ich null verstanden. > > Laut Datasheet sieht das ja so wie im Anhang aus. Normal sollte der 328p einen internen Lastwiderstand haben. Allerdings hatte ich beobachtet, dass der beim Arduino extra ausgeführt ist. Da hab ich ihn sicherheitshalber auch noch mal eingebaut. Das mit Hitze und kühlen war eine Beobachtung. Wenn das Ding nicht mehr ging, konnte ich mit heiß machen der Lötstellen das Ding kurzzeitig wieder in Gang bekommen. Zeitweilig hatte ich auch den Eindruck mit Eisspray den Fehler auslösen zu können. Ich habe den Eindruck, dass die Tipps am Anfang auch nicht schlecht waren (Fuses und Saubermachen) seit dem läuft er wieder. Aber man soll den Tag nicht vor dem Abend loben...
michael_ schrieb: > Klaus schrieb: >> In der ersten Version wird noch ein Keramikresonator verwendet. >> Allerdings mit einem 27 Ohm Serienwiderstand. Warum fehlt der bei Dir? > > Dieser Serienwiderstand ist wichtig. Und die C sollten mindestens > doppelt groß sein. > Und ausfallen tun sie auch mehr als Quarze. Das mit dem Serienwiderstand hatte ich gestern. Hat nicht geholfen. Welche Cs meinst Du? die einzigen Cs sind in dem Resonator.
OK. Soweit so gut. Im Prinzip sollte auch ein Keramikresonator gehen. Das wird im Datenblatt vom 328p auch so genannt. Nur ist der Impedanzverlauf und das Schwingverhalten von Quarz und Resonator doch ziemlich unterschiedlich. Das bei dem ATMega16 von Resonator auf Quarz umgeschwenkt wurde, lässt zumindest die These zu, dass Thema nicht trivial ist. Man wird also weder Quarz gegen Resonator einfach austauschen können (was Du ja auch nicht versucht hast) noch einen Resonator gegen den anderen (was Du meiner Meinung nach versucht hast). Wenn dann die Vermutung nahe liegt, dass die Oszillatorschaltung im 328p ein wenig, vielleicht auch nur subtil verändert wurde (AU AN), und sowohl Quarz als auch Resonator Probleme machen, dann hast Du jetzt zwei statt einem Problem. An sich wäre die erste Fragestellung: Was ist der Unterschied zwischen den Nicht-AU-AN-Modellen und AU-AN? Wie muss Quarz und Anschaltung verändert werden, damit dieser Unterschied ausgeglichen wird. (Errata angeschaut?) Wenn ich den Messgerätepark dafür hätte, würde ich mir mal die Quarze ausmessen und das Verhalten der vorher verwendeten Nicht-AU-AN Type (welche eigentich?) und das der AU-AN anschauen und vergleichen. Vielleicht hast Du ja die Möglichkeit? Ansonsten würde ich, vor die selbe Situation gestellt, die Analyse mit meinem Oszilloskop und ein paar improvisierten Messmitteln versuchen. Ich glaube, ohne messen, wird das nichts, wenn das jedes mal Stunden dauert, ehe das Problem erkennbar wird. Es gibt da, glaube ich, eine AN, in der die Oszillatorschaltung von Atmel etwas auseinanderklamüselt ist. Allerdings nur eine (unbestimmte) Variante, aus der man den Unterschied zwischen Nicht-AU/AN und AU/AN wohl nicht erkennen können wird. Tut mir echt leid für Dich. Viel Erfolg.
Wenn Du von HF tatsächlich nur soviel Ahnung hast, wie die Kuh vom Uhrwerk, dann hilft nur probieren. Extrem mühsam, wenn es Stunden dauert, ehe die Folgen sichtbar werden. Einfach mal den Parallelwiderstand und den Lastwiderstand (die 27 Ohm) variieren und auch mal weglassen. Sinnvoll dürfte wohl für den 1MOhm irgendwas zwischen 100kOhm (eine Dekade weniger) bis hinauf zu 10MOhm sein. Vielleicht so 4 Werte um eine Tendenz zu erkennen. Dann noch mal die 27 Ohm zwischen 10 und 47 Ohm variieren. Auch so vier Werte. Tabelle führen! (Brauche ich Dir nicht zu sagen). Das würde zumindest mal eine Tendenz erkennen lassen. Sehr langweilig. Hol ein paar DVDs oder lerne Swaheli dabei. Viel Erfolg.
Was auch noch eine etwas zielgerichtere Variante wäre (abgesehen davon den wesentlich erprobteren Quarz zu verwenden). Versuche doch mal von dem Resonator im Uno die Bezeichnung und das Datenblatt zu finde. Aus dem Impedanzverlauf und dem Vergleich mit Deinem Resonator müsste man schon plausible Vermutungen zu den den neuen Widerstandswerten ableiten können. Du hast halt soviele Unbekannte in der Situation. Welchen 328 die im Uno verwendet haben, weiss ja auch im Moment niemamd. P.S. 100kOhm ist doch ein bisschen wenig. Aber so mit 800 könnte man mal anfangen.
> An sich wäre die erste Fragestellung: Was ist der Unterschied zwischen > den Nicht-AU-AN-Modellen und AU-AN? Wie muss Quarz und Anschaltung > verändert werden, damit dieser Unterschied ausgeglichen wird. (Errata > angeschaut?) > Meiner Meinung nach nur der Temperaturbereich. Hatte vorher nen AU und der ist jetzt auch wieder drin. Geht auch immernoch. Messen wäre gut. aber zuhause hab ich auch jetzt nur ein popeliges HAMEG 307 Scope. Macht nur 10 Mhz und ich wüsste nicht, wie ich das mit nem Scope messen kann, ohne dass der Quarz stehen bleibt.
Klaus schrieb: > Wenn Du von HF tatsächlich nur soviel Ahnung hast, wie die Kuh vom > Uhrwerk, dann hilft nur probieren. Extrem mühsam, wenn es Stunden > dauert, ehe die Folgen sichtbar werden. > > Einfach mal den Parallelwiderstand und den Lastwiderstand (die 27 Ohm) > variieren und auch mal weglassen. Sinnvoll dürfte wohl für den 1MOhm > irgendwas zwischen 100kOhm (eine Dekade weniger) bis hinauf zu 10MOhm > sein. Vielleicht so 4 Werte um eine Tendenz zu erkennen. Dann noch mal > die 27 Ohm zwischen 10 und 47 Ohm variieren. Auch so vier Werte. Tabelle > führen! (Brauche ich Dir nicht zu sagen). Das würde zumindest mal eine > Tendenz erkennen lassen. > > Sehr langweilig. Hol ein paar DVDs oder lerne Swaheli dabei. Viel > Erfolg. Das wäre eine Option.
Christoph N. schrieb: >> An sich wäre die erste Fragestellung: Was ist der Unterschied zwischen >> den Nicht-AU-AN-Modellen und AU-AN? Wie muss Quarz und Anschaltung >> verändert werden, damit dieser Unterschied ausgeglichen wird. (Errata >> angeschaut?) >> > > Meiner Meinung nach nur der Temperaturbereich. Hatte vorher nen AU und > der ist jetzt auch wieder drin. Geht auch immernoch. Naja. Aber das ist ja ein mittelbarer Faktor. Was hat der für Ursachen. Mal etwas abstrakt ein anderer Temperaturbereich sagt ungefähr wie "steif" bzw. "flexibel" die Verstärker und Stromquellen sind. Mir ist auch noch eingefallen, was eigentlich dumm von mir war, dass der Grund für den Wechsel von Resonator auf Quarz am 162 das Problem mit der schlechteren Frequenzgenauigkeit der Resonatoren sein kann. > Messen wäre gut. aber zuhause hab ich auch jetzt nur ein popeliges HAMEG > 307 Scope. Macht nur 10 Mhz und ich wüsste nicht, wie ich das mit nem > Scope messen kann, ohne dass der Quarz stehen bleibt. Also, da mein Messgerätepark sich im wesentlichen auch auf ein Oszilloskop beschränkt, würde ich vielleicht versuchen mit einer Spule lose anzukoppeln oder mit 'nem hohem Vorwiderstand. Da Deines nur 10MHz kann, ist das mit viel abschätzen und Kopfrechnen verbunden - Pegel solltest Du mit den 10MHz aber noch sehen können -, aber man würde es wahrscheinlich zumindest grob beurteilen können, was da los ist.
Christoph N. schrieb: > Ich habe den Eindruck, dass die Tipps am Anfang auch nicht schlecht > waren (Fuses und Saubermachen) seit dem läuft er wieder. Aber man soll > den Tag nicht vor dem Abend loben... Die LowFuse bezieht sich nur auf start-up zeiten, ist in diesem Zusammenhang also völlig uninteressant, da ja dein AVR ohne Probleme startet. Das mit den Widerständen ist absolut unnötig und wird beim Atmel nicht mal als möglicher Problem im Ansatz erwähnt. Wenn Quarz nach 8-10 Stunden aufhört zu schwingen, hat er sich entweder überhitzt oder du hast schlechte Lötstellen. Ich hab mir deine Bilder gerade angeschaut, es ist wirklich schlecht und unsauber gelötet, Lötstellen sind überhitzt. Bisschen üben und dann nochmal das Ganze sauber löten, es wird mit Sicherheit funktionieren.
Also, ich konnte des Ausfall mit Eisspray erzwingen. Wenn ich dann Pin 8 heiß gemacht habe mit dem Lötkolben ist es wieder weg. Ob das villeicht auch von kondensierendem Wasser kommt, weiß ich nicht. Es ist auch nicht so, dass es jedesmal beim Kaltstellen ausfällt.
Marc Vesely schrieb: > Christoph N. schrieb: >> Ich habe den Eindruck, dass die Tipps am Anfang auch nicht schlecht >> waren (Fuses und Saubermachen) seit dem läuft er wieder. Aber man soll >> den Tag nicht vor dem Abend loben... > > Die LowFuse bezieht sich nur auf start-up zeiten, ist in diesem > Zusammenhang also völlig uninteressant, da ja dein AVR ohne Probleme > startet. > > Das mit den Widerständen ist absolut unnötig und wird beim Atmel > nicht mal als möglicher Problem im Ansatz erwähnt. > Wenn Quarz nach 8-10 Stunden aufhört zu schwingen, hat er sich > entweder überhitzt oder du hast schlechte Lötstellen. > Ich hab mir deine Bilder gerade angeschaut, es ist wirklich schlecht > und unsauber gelötet, Lötstellen sind überhitzt. > Bisschen üben und dann nochmal das Ganze sauber löten, es wird mit > Sicherheit funktionieren. Ok, habs noch mal nachgelötet. Es spricht ja Einiges dafür, dass die Löstelle nach ein paar Stunden die Impedanz ändert. Oder das evtl. doch Flussmittelrückstände bei dem Wetter Wasser anziehen. Die geänderten Fuses änderten die Clock Source aber auch auf "full swing crystal" - ist das kein Unterschied?
Kontolliere bitte noch einmal, ob Du die Option 'full swing' bei 'Fuse Low Byte' auch aktiviert hast, wie es c-hater schon angemahnt hatte. Das ist für mich die einzige Möglichkeit, ein solch instabiles Verhalten zu erreichen! Die ganzen Spielereien mit Rs und Cs oder Sprays oder Flussmittel sind Bastelkram und völlig belanglos.
Christoph N. schrieb: > Also, ich konnte des Ausfall mit Eisspray erzwingen. Wenn ich dann Pin 8 > heiß gemacht habe mit dem Lötkolben ist es wieder weg. Ob das villeicht > auch von kondensierendem Wasser kommt, weiß ich nicht. Es ist auch nicht > so, dass es jedesmal beim Kaltstellen ausfällt. Entschuldige, aber mit Kältespray kann man viel erzwingen: Auch kalte Getränke. :-) Das deutet nur darauf hin, dass die Temperatur in einem bestimmten Bereich liegen muss. Das aber ist allgemein so und nur relevant, wenn der Temperaturbereich in bemerkenswertem Maße ausserhalb der Nennwerte liegt. Mit Kältespray erzwingst Du das einfach. Mit sinkender Temperatur erhöhen sich ganz allgemein Widerstände und verringern sich Verstärkungen. Deine Beschreibung deutet darauf hin, dass der Ausfall bei Erwärmung auftritt und nicht bei "Erkältung". :-) Wenn Du durch Kältespray erreichen kannst, das es geht: das wäre relevant. Nein, nein. Ich mag falsch liegen - dann korrigiere man mich bitte, aber ich halte das für Zeitverschwendung.
Fuses sind: (H:05, E:DE, L:F7) Immer wenn es nicht mehr funktioniert, die beiden XTAL-Pins von der CPU heiß machen, dann geht es wieder.
Was die Flussmittelrückstände betrifft: Es kommt darauf an: Falls die Rückstände da schon seit Wochen drauf sind und nun, nach Entfernung, dass Problem nicht mehr auftritt, dann ist das interessant. Wobei das auch heissen könnte, das die Dimensionierung nahe an einer der Grenzen zur Nicht-Funktion ist - also auch Dimensionierung ändern. Falls wir aber von einer frisch gelöteten Platine reden, dann findet die Veränderung nicht innerhalb von Stunden statt (es sei denn es handelt sich um den unwahrscheinlichen Fall, einer sehr grenzwertigen Dimensionierung - dann wäre auch eine Neudimensionierung fällig).
Wenn es wieder mal ausfällt, miss mal die VCC und GND Pins durch. Wer sagt denn dass es der Kristall ist? Ev. haben auch die Leiterbahnen einen Haarriss. Ich sehe da noch ein Via, miss da auch nochmal ob der Kontakt noch da ist. Du suchst vielleicht einfach nur an der falschen Stelle.
Christoph N. schrieb: > Die geänderten Fuses änderten die Clock Source aber auch auf "full swing > crystal" - ist das kein Unterschied? Normalerweise nein, andersrum ja.
Das ist alles Vodoo, den Du hast ja die Temperaturen nicht unter Kontrolle. Weisst Du ob die Temperatur nicht vorher signifikant abgesunken ist, oder angestiegen? Allenfalls von Deinem subjektiven Wohlbefinden her - und das ist eher flexibel und bezieht sich nicht auf die Temperatur der Bauteile selbst. Klammere Dich nicht an sinnloses Herumexperimentieren. Das kostet nur Zeit. Systematisches Arbeiten ist gefragt.
Christoph N. schrieb: > Fuses sind: (H:05, E:DE, L:F7) Dann nimm noch einmal den zuvor verwendeten Quarz. Bei low-byte = 0xff konnte er garnicht stabil funktionieren.
Was genau meinst Du mit "Neudimensionieren". Da gibt es doch keinen Parameter, den ich ändern könnte - oder?
Christoph N. schrieb: > Was genau meinst Du mit "Neudimensionieren". Da gibt es doch keinen > Parameter, den ich ändern könnte - oder? Hä? Jetzt fange ich aber an mich zu wundern. Widerstände bzw. Bauteile allgemein haben Werte die man neu bestimmen kann: Das ist "Neudimensionieren". Das ist doch der Witz bei dem Variieren der Bauteile-Werte. Das Du Anhaltspunkte bekommst, in welche Richtung Du dimensionieren musst. Oder willst Du zukünftig Lötkolben und Kältespray mit Deine Platinen liefern?
Christoph N. schrieb: > Was genau meinst Du mit "Neudimensionieren". Da gibt es doch keinen > Parameter, den ich ändern könnte - oder? Ich würde als Kontrollinstrument erstmal den Oszi seeeeeer hochohmig (auch ein kleiner C ist niederohmig) ankoppeln und das Anschwingverhalten anschauen. (Nadel an die Spitze löten und einfach nebendran hinlegen) Je zögerlicher er anschwingt desto unzuverlässiger ist die ganze Geschichte. (auch die Schwingamplitude sagt was über die Toleranz gegenüber Tempänderungen usw. aus) Da siehst du dann wenigstens ob eine Änderung der Fuses oder sonst eine irgendwas am Verhalten ändert. Kurt (Ein ähnliches Problem taucht manchmal bei 32 k Uhrenquarzen auf, das kriegt man so auch leichter hin) ..
Hast du beim ATmega das Oszillator-Setting für hohe Frequenzen gewählt? Könnte es nicht sein, daß der Quarz überlastet wird. Eigentlich sind die Quarze die nur mit 100uW max. Leitstung spezifiziert sind gar nicht für 5V Betrieb geeignet, wenn der Oszillator bei der Frequenz noch fast vollen Spannungshub macht. Größere Bauformen vertragen wie hier bis zu 1000uW. http://www.abracon.com/Resonators/ABSM3B.pdf
Nimm einen Oszillator und gut ist. Uns sucht mal jemanden der löten kann. Lötpaste mit Heissluft über die Platine zu verteilen ist ja albern. Tolle Forschungseinrichtung, wie sagen die Amis so schön -> your taxdollars at work
Klaus schrieb: > Christoph N. schrieb: >> Was genau meinst Du mit "Neudimensionieren". Da gibt es doch keinen >> Parameter, den ich ändern könnte - oder? > > Hä? Jetzt fange ich aber an mich zu wundern. > > Widerstände bzw. Bauteile allgemein haben Werte die man neu bestimmen > kann: Das ist "Neudimensionieren". > Das ist doch der Witz bei dem Variieren der Bauteile-Werte. Das Du > Anhaltspunkte bekommst, in welche Richtung Du dimensionieren musst. > > Oder willst Du zukünftig Lötkolben und Kältespray mit Deine Platinen > liefern? Natürlich weiß ich, was mit Neudimensionieren normal gemeint ist. Meine Frage war, was ich an der aktuellen Schaltung (Keramikoszilator, AVR und Lastwiderstand 1 MOhm) ändern soll. Helmut S. schrieb: > Könnte es nicht sein, daß der Quarz überlastet wird. > Eigentlich sind die Quarze die nur mit 100uW max. Leitstung > spezifiziert sind gar nicht für 5V Betrieb geeignet, wenn der Oszillator > bei der Frequenz noch fast vollen Spannungshub macht. Das ist vielleicht ein Punkt. Im Openlog lief das ganze mit 3,3V. ttl schrieb: > Nimm einen Oszillator und gut ist. Uns sucht mal jemanden der löten > kann. Lötpaste mit Heissluft über die Platine zu verteilen ist ja > albern. > Tolle Forschungseinrichtung, wie sagen die Amis so schön -> your > taxdollars at work Ich will mich jetzt nicht weit aus dem Fenster lehnen, aber das ist nicht das erste Mal, dass ich sowas bestücke. Im ersten Bild sa es vllt. etwas wild aus, weil ich da 738 Mal dran rumgemacht habe und Klaus schnell ein Bild liefern wollte. Danach hab ich es sofort hübsch gemacht und sauber gemacht, es geht immernoch nicht. Die Tatsache, dass ich eine vom Aussehen und von der messbaren Charakteristik her einwandfreie Lötstelle "warm" machen muss, spricht für eine "grenzwertige Auslegung". Ein Oszillator wäre eine Idee. Gibt es Empfehlungen?
:
Bearbeitet durch User
Christoph N. schrieb: >> 3. Der Grund dafür ist eine bei CPU-Wechsel aufgetretene unaufgeklärte >> Fehlfunktion. > > Korrekt. Das Bauteil hat ca. 2 Jahre funktioniert, dann wurde die CPU > durch falsche Spannung zerschossen. Ab da (als ich die neuen CPUs > verwendete (AU und AN Typen) gingen die Probleme los. Es ging da um eine einzelne Platine oder viele? Hast Du nach dem die CPU zerstört wurde die selbe Platine verwendet und nur die CPU getauscht oder eine komplett neue Platine fertigen lassen und bestückt? Wenn es die selbe Platine war: vielleicht wurde durch die Überspannung ja noch mehr zerstört als der Atmega. Quarze sind durchaus empfindlich für mechanische Einflüsse. Starke Beschleunigungen oder Überhitzen mögen die nicht und dann gehen sie entweder sofort kaputt oder werden unzuverlässig. Letzters könnte es bei Dir gewesen sein. Die moderneren kleineren SMD-Quarze (3,2x2,5mm etc.) sind da empfindlicher als die älteren größeren (HC49 etc.). Meine Erfahrung ist, daß bei 1000 Stück gefertigten Baugruppen durchaus bei 1-2 Stück der Quarz defekt sein kann. Fällt dann beim Testen sofort auf, wird getauscht und fertig.
Gerd E. schrieb: > Christoph N. schrieb: >>> 3. Der Grund dafür ist eine bei CPU-Wechsel aufgetretene unaufgeklärte >>> Fehlfunktion. >> >> Korrekt. Das Bauteil hat ca. 2 Jahre funktioniert, dann wurde die CPU >> durch falsche Spannung zerschossen. Ab da (als ich die neuen CPUs >> verwendete (AU und AN Typen) gingen die Probleme los. > > Es ging da um eine einzelne Platine oder viele? Hast Du nach dem die CPU > zerstört wurde die selbe Platine verwendet und nur die CPU getauscht > oder eine komplett neue Platine fertigen lassen und bestückt? Sowohl das Eine, als auch das Andere. > Quarze sind durchaus empfindlich für mechanische Einflüsse. Starke > Beschleunigungen oder Überhitzen mögen die nicht und dann gehen sie > entweder sofort kaputt oder werden unzuverlässig. Letzters könnte es bei > Dir gewesen sein. Die moderneren kleineren SMD-Quarze (3,2x2,5mm etc.) > sind da empfindlicher als die älteren größeren (HC49 etc.). Vielleicht ist ja auch meine Vergewaltigung mit Eisspray nicht förderlich. Jetzt läuft es mit 3,3V zum Test, um zu gucken, ob es an der Leistung des Resonators liegt. Wenn das nix bringt, Quarz mit diesen Fuses und sonst Oszillator. Den muss ich da dann aber noch drauffrickeln.
3,3V geht auch nicht. Jetzt bau' ich auf den alten Quarz um.
Christoph N. schrieb: > Ab da (als ich die neuen CPUs > verwendete (AU und AN Typen) gingen die Probleme los. vllt. hast Du eine Fälschung bekommen Beitrag "Gefälschte AVR-uC?"
Klaus schrieb: > Ich bin raus. Trotzdem vielen Dank für Deine Mühe. Ich habe jetzt zum Test den Epson-Quarz mit 10 pF Kondensatoren und den von c-hater empfohlenen fuses eingebaut. Läuft soweit. Wenn das nicht gut ist, gibts noch mal andere Kondensatoren (hatte bis jetzt 22pF, was würdet Ihr empfehlen?). Wenn das nicht geht gibts nen Oszilator. Habt Ihr da Tipps? Vielen Dank für Eure Hilfe
Paul Baumann schrieb: > Klaus schrieb: >> Ich bin raus. > > https://www.youtube.com/watch?v=kSYblBKZ75Y > > MfG Paul Ach was! Das ist alles sinnlose Herumprobiererei. Wenn es dann am Ende gehen sollte, weiss zwar keiner warum das so ist, aber alle schaukeln sich die Eier und prahlen mit ihren analytischen Fähigkeiten.
Naja, sinnlose Herumprobiererei hin oder her, ich muss es zum laufen haben. Ich bin ja offen für Tipps. Was sollte ich also sonst jetzt tun? Quarz mit 10pF ist auch instabil...
Und auch hier wieder, XTAL-Pins warmmachen und es geht wieder. Ob ich mal die MCU tausche?
Klaus schrieb: > Ach was! Das ist alles sinnlose Herumprobiererei. Wenn es dann am Ende > gehen sollte, weiss zwar keiner warum das so ist, aber alle schaukeln Stimmt. Aber dass es einfacher und logischer ist, Bauteile auf einer Platine 10 Mal zu entlöten, anstatt von Anfang an eine neue Platine und neue Bauteile zu nehmen, will mir einfach nicht in den Kopf. Ausser Dummheit und Geiz kann es da keinen anderen Grund dafür geben. Ich bin auch raus.
Christoph N. schrieb: > Ich habe jetzt zum Test den Epson-Quarz mit 10 pF Kondensatoren und den > von c-hater empfohlenen fuses eingebaut. Läuft soweit. Wenn das nicht > gut ist, gibts noch mal andere Kondensatoren (hatte bis jetzt 22pF, was > würdet Ihr empfehlen?). nicht wild irgendwelche Kondensatoren ausprobieren, sondern die nötige Kapazität berechnen? Lies mal die AN2867 von ST: http://www.st.com/web/en/resource/technical/document/application_note/CD00221665.pdf Da wirds genau erklärt, halt für die µCs von ST. Musst Du halt auf die Werte für Deinen Atmega anpassen. Vielleicht findest Du auch ein ähnliches Dokument von Atmel.
Aktuell habe ich es mit einer neuen Platine versucht. Wie ich schon schrieb - Sowohl als auch... Mit geiz und/oder Dummheit hat das also nix zu tun.
>Ab da (als ich die neuen CPUs > verwendete (AU und AN Typen) gingen die Probleme los. Christoph N. schrieb: > Was sollte ich also sonst jetzt tun? Du kannst doch diesen Effekt mal dem Hersteller schildern. Es muß sich ja offenbar etwas an der Innenschaltung der Kontroller geändert haben, wenn es mit gleicher Außenbeschaltung nicht mehr funktioniert. Schicke die Schaltung und die gesetzten Fusebits hin, damit sie das nachprüfen können. Hast Du noch eine 2. Platine von der Sorte? MfG Paul
Hallo Paul. Ich habe noch eine ganze Hand voll, muss ich nur bestücken. Nur ohne einen Ansatz macht das wenig Sinn, glaube ich. Ich denke, ich bin nicht der einzige, der versucht einen Atmega328p mit externem 16Mhz Quarz zu betreiben, das kann doch nicht so kritisch sein...
Christoph N. schrieb: > Quarz mit 10pF ist auch instabil... Christoph N. schrieb: > Und auch hier wieder, XTAL-Pins warmmachen und es geht wieder. Ob ich > mal die MCU tausche? irgendwie kommt mir langsam das Gefühl daß nicht die Quarze oder Oszillatoren Dein Problem sind, sondern irgendetwas anderes. Z.B. Spannungsschwankungen, EMV, Bugs im Code,... Sowas kann jahrelang unentdeckt bleiben weil zufällig dieser eine µC damit nicht abstürzt. Aber dennoch betreibst Du das Teil außerhalb der Spezifikation und irgendeine kleine Änderung bringt dann das Problem zu Tage.
Christoph N. schrieb: > Ich denke, ich > bin nicht der einzige, der versucht einen Atmega328p mit externem 16Mhz > Quarz zu betreiben, das kann doch nicht so kritisch sein... Nein, da bist Du nicht der Einzige. Ich habe hier Atmega328 im DIL-Gehäuse, die mit 16MHz-Quarz und 2x22pF ohne Mühe funktionieren. Du hast aber welche in SMD-Bauform und die ärgern Dich. Deshalb habe ich ja vermutet, daß die Innenschaltung der Oszillatorbaugruppe wohl anders sein muß, als sie mal war. mfG Paul Edith sagt: Mach doch mal 2x22pf dran und laß ein Programm laufen, was nur 3 Variablen für Sekunde, Minute und Stunde hochzählt. Laß Dir das über die serielle Schnittstelle auf den Rechner ausgeben, leg Dich in den Liegestuhl und sieh morgen Früh, ob es bis dahin fehlerfrei durchlief.
:
Bearbeitet durch User
Gerd E. schrieb: > Kapazität berechnen? > > Lies mal die AN2867 von ST: > http://www.st.com/web/en/resource/technical/document/application_note/CD00221665.pdf > Danke für den Link. Das ist der einzige den ich bisher gesehen habe der auch die Quarzbelastung beschreibt. Auf jeden Fall kommt man mit dieser Formel auf einige 100uW, also deutlich mehr als der verwendete Quarz verkraftet. Alle wollen immer die kleinsten Bauteile aber trotzdem bei 5V Versorgung bleiben.
So. Nachdem auch 16Mhz + 2x 15pf ärger machte, habe ich jetzt ein neues Board bestückt. Jetzt zuerst Versuch mit dem Resonator und den neuen Fuses. Abwarten und Tee trinken. Kein Eisspray
Mach mal bitte einen Versuch: Wenn das Board läuft, berühre einfach mal den Quarz bzw Resonator. Aber nur das Gehäuse, keine Anschlüsse! Setzt er dann wieder aus?
Gerd E. schrieb: > irgendwie kommt mir langsam das Gefühl daß nicht die Quarze oder > Oszillatoren Dein Problem sind, sondern irgendetwas anderes. Z.B. > Spannungsschwankungen, EMV, Bugs im Code,... Das kann aber nicht sein, denn dazu müsste er ja den kompletten Schaltplan und Sourcecode posten! Das will er ja nicht!
Sören schrieb: > Mach mal bitte einen Versuch: > > Wenn das Board läuft, berühre einfach mal den Quarz bzw Resonator. Aber > nur das Gehäuse, keine Anschlüsse! Setzt er dann wieder aus? Neue Platine, die gerade läuft mit Keramikresonator, neuen Fuses und ohne Lastwiderstand: Kein Problem. Sören schrieb: > Gerd E. schrieb: >> irgendwie kommt mir langsam das Gefühl daß nicht die Quarze oder >> Oszillatoren Dein Problem sind, sondern irgendetwas anderes. Z.B. >> Spannungsschwankungen, EMV, Bugs im Code,... > > Das kann aber nicht sein, denn dazu müsste er ja den kompletten > Schaltplan und Sourcecode posten! Das will er ja nicht! Das habe ich nie behauptet. Die Eagle-Datei habe ich nur nicht in der neuesten Version da, daher hatte ich heute morgen das was bestückt in dem Schaltplan, so wie es ist, hochgeladen. Sourcecode ist trivial. Variable inkrementieren und ausgeben, sonst nichts. Software läuft auf nem UNO unfallfrei.
Sören schrieb: > Mach mal bitte einen Versuch: > > Wenn das Board läuft, berühre einfach mal den Quarz bzw Resonator. Aber > nur das Gehäuse, keine Anschlüsse! Setzt er dann wieder aus? Nachdem es ja lange 10 Std sind könnte man wohl eher auf Umwelteinflüsse schliessen, Lötlack, Feuchte in der Platine, usw. Ich hatte mal einen FS (Multituner) der machte beim Kunden immer wieder Probleme, in der Werkstatt, nachdem er da drei Tage rumstand, lief er dann wieder. Beim Kunden angekommen ward nach einer Woche wieder Schluss. Nach mehrmaligem rumfahren isolierte ich den Tuner komplett mit Plastikspray, ab da war Ruhe. Der Kunde hatte eine komplett neu renovierte Wohnung mit lauter "guten" Sachen drin. (Teppiche, Tapeten, Sessel usw.) (die feuchte Luft war es nicht, denn da wars trocken) Kurt
Du meinst, ich sollte das Ding mit Plastikspray eindprühen?
Kurt Bindl schrieb: > Sören schrieb: >> Mach mal bitte einen Versuch: >> >> Wenn das Board läuft, berühre einfach mal den Quarz bzw Resonator. Aber >> nur das Gehäuse, keine Anschlüsse! Setzt er dann wieder aus? > > Nachdem es ja lange 10 Std sind könnte man wohl eher auf Umwelteinflüsse > schliessen, Lötlack, Feuchte in der Platine, usw. Und warum soll er dann nicht einfach mal den Finger drauf tippen? Ich frage aus einem speziellen Grund den ich selber schon erlebt habe! Christoph, bitte mal den Finger auf den Resonator tippen! Egal was Kurt dazu meint!
Hatte ich je gemacht. War kein Problem. Jetzt hab ich die Platine die gerade läuft mal mit Plastikspray eingesprüht, um sowas wie Luftfeuchte auszuschließen. Ich muss gleich los und werde daher jetzt diesen Dauertest laufen lassen. Ich danke Euch allen für Eure Hilfe, lasse jetzt den Dauertest laufen und werde berichten!
Sören schrieb: > > Christoph, bitte mal den Finger auf den Resonator tippen! Egal was Kurt > dazu meint! Wieso sollt er er das nicht machen, das ist doch selbstverständlich, oder? Ich schrieb meinen Senf um ein weiteres Szenario ins Auge zu fassen, denn die 10Std sind schon sehr lange, und da könnte es doch sein dass bei Erwärmen die Feuchtigkeit oder das Lösemittel verdampft und dann wieder, von der Platine aus oder sonstwoher, einsickert und Rs/Cs bildet. Kurt Nachtrag: seh grad: es könnte so aufgefasst werden dass ich das mit dem Finger nicht für gut heisse. Das ist nicht so! Sorry wenns anders rumkam.
:
Bearbeitet durch User
Ahh ok Kurt, hab ich wohl falsch aufgefasst! Das mit dem Finger ist relativ simple! Ich hatte Quarze und einen AVR ohne das Fuse für 16MHz laufen. Beim berühren war es dann vorbei mit dem Takt. Auch am Oszi konnte man eine niedrige Spannung messen die dann zusammenbrach. Mit dem Fuse für High-XTAL war die Quarzsopannung bei knapp 5V und lief so stabil das man auch ein Handy auf die Schaltung legen konnte ohne das der AVR zu mucken (türkisches imperativ?) beginnt!
Paul Baumann schrieb: > ... > Du hast aber welche in SMD-Bauform und die ärgern Dich. Deshalb habe ich > ja vermutet, daß die Innenschaltung der Oszillatorbaugruppe wohl anders > sein muß, als sie mal war. Super. Das haben wir ja schon vor 4 1/2 Stunden mal erwähnt . Dann drehen wir uns ja jetzt hübsch im Kreise. Inzwischen suche ich schon mal vielversprechende Senfsorten, die man da draufschmieren kann.
Christoph N. schrieb: > Du meinst, ich sollte das Ding mit Plastikspray eindprühen? Wenn der Verdacht besteht dass es an der Platine liegt dann würde ich die beiden Haxn des AVR hochbiegen, den Schwinger mit den Cs freifliegend anlöten und nur ein kurze Masseverbindung zum Bezugspin legen, Plastikspray würde ich beim zweitem Versuch, falls es wieder Probleme geben sollte, auch noch drüberkippen. Kurt
:
Bearbeitet durch User
Christoph N. schrieb: > Das mit dem Serienwiderstand hatte ich gestern. Hat nicht geholfen. > Welche Cs meinst Du? die einzigen Cs sind in dem Resonator. Eben! Außerdem ist in Umgebungen mit starken Erschütterungen ein Resonator sogar eher zu empfehlen. Hast du das schon mal gelesen? http://www.atmel.com/images/atmel-2521-avr-hardware-design-considerations_applicationnote_avr042.pdf ... ein Auszug daraus:
1 | Unbalanced External Capacitors |
2 | In noisy environments the oscillator can be affected crucially by the noise. If the noise is strong enough the |
3 | oscillator can “lock up” and stop oscillating. To make the oscillator less sensitive to noise the size of the capacitor |
4 | at the high impedance input of the oscillator circuit, XTAL1 can be increased slightly. Increasing only one of the |
5 | capacitors does not affect the total capacitive load much, but unbalanced capacitors can affect the resonant |
6 | frequency to a higher degree than the change of the total capacitive load. However, unbalanced capacitive loads |
7 | will affect the duty cycle of the oscillation and therefore one should in general not use unbalanced cap |
:
Bearbeitet durch User
Vielleicht geht ja gerade dann irgendwas an, was zu Störungen mit diesem Effekt führt. Weil du ja schriebst, "...alle 10 Stunden ...".
Stell mal die Fuse-bits auf "full swing" für den Oszillator vom 328p um. cksel = 0111. Der Tip war schon weiter oben im Thread. Bei 16 MHz ist das zu empfehlen.
Christoph N. schrieb: > Hatte ich je gemacht. War kein Problem. Jetzt hab ich die Platine die > gerade läuft mal mit Plastikspray eingesprüht, um sowas wie Luftfeuchte > auszuschließen. Mach doch nicht den ganzen Blödsinn, den man Dir hier erzählt. Wer einen Schaltplan braucht, um einen Quarz am ATmega anzuschließen, sollte besser aufpassen, daß sie ihn nicht abholen und mit Pillen vollstopfen.
lz129 schrieb: > Stell mal die Fuse-bits auf "full swing" für den Oszillator vom 328p um. > cksel = 0111. Der Tip war schon weiter oben im Thread. Bei 16 MHz ist > das zu empfehlen. Das hat weniger mit der absoluten Frequenz zu tun, sondern nur damit, wie gut der Rückkopplungszweig des Oszillators ist, also das, was man als externen Aufbau beeinflussen kann. Und der Punkt ist, daß diese Scheiß-Murata-Resonatoren (zumindest die der gewählten Genauigkeitsklasse) i.d.R. alles andere als optimal sind. Und bei diesen Scheiß-Teilen mit integrierten Ballast-Kapazitäten hat man noch nicht mal die Möglichkeit, an eben diesen Kapzitäten zu optimieren. Da hilft dann eben nur, mittels FullSwing mehr Power draufzugeben (und damit einen erhöhten Energieverbrauch für den Oszillator in Kauf zu nehmen). U.u. kann das übrigens sogar kontraproduktiv sein, wenn man nämlich irgendwann eine Charge dieser Scheißdinger erwischt, bei der zufällig alles mal gut paßt. Dann überlastet man die Dinger im FullSwing-Betrieb und sie fallen dann irgenwann aus. Das kann beim TO aber ganz sicher nicht das Problem gewesen sein. So ein Ausfall ist dann nämlich endgültig. Da hilft es dann ganz sicher auch nicht mehr, irgendeine Lötstelle zu erwärmen. Das gilt für Quarze übrigens genauso wie für Keramikresonatoren. Das beste Mittel für eine kompetente Fehlersuche ist immer, die Schwingung an XTAL1 zu oszilloskopieren. Das ist mit jedem ernstzunehmenden Oszi überhaupt kein Problem. Wenn die Schwingung allein durch Antasten mit dem Oszi abreißt, ist der Oszillator definitiv weit weg vom optimalen Arbeitspunkt und deswegen inhärent instabil.
Wir benutzen Bürklin 77 D 9754 am AT90CAN128 mit 2*22pF im Fullswing Mode. Ist schön klein (3,2*2,5mm²).
Auf dem Foto sieht es so aus, als ob der rechte Anschluss des 1 M Widerstandes mit dem GND in Berührung kommen könnte.
Also, wie versprochen das Update: Ich habe die Platine gereinigt und funktionsfähig mit Plastikspray lackiert, da ich den Verdacht hatte, dass z.B. das Flussmittel mit seinen hygroskopischen Eigenschaften nach einer gewissen Zeit Wasser zieht, was in diesem Kontext zu parasitären Kapazitäten führt. Wackelige VCC und GND Verbindungen konnte ich ausschließen, da ich die auch mal mit Kupferlackdraht redundant ausgeführt hatte. Ich habe mich für die ursprünglich geplante Konfiguration mit Murata und ohne 1 Mohm Lastwiderstand entschieden, da das im Datenblatt nicht vorgesehen ist. Die Fuses sind immernoch H:05, E:DE, L:F7. Also mit Full-Swing (CKSEL=0111). Das Ergebnis ist bis jetzt vielversprechend: Das Ganze läuft seit ca. 22h ohne Probleme durch. Das heißt nicht, dass das Problem abwesend sein muss, ich kann es zur Zeit nur nicht reproduzieren. Sollte sich das Ergebnis noch mal ändern würde ich mich wieder melden! @c-hater: Vielen Dank für die letzte Erklärung, da habe ich noch mal einiges verstanden! An Alle: Vielen Dank für die vielen Anregungen, das hat mir sehr weitergeholfen!
Hi! Noch zwei Anmerkungen: Beim Erhitzen der Lötstellen erhöhst du nicht nur die Temperatur sondern verbindest auch die Kontakte elektrisch mit dem Lötkolben. Je nachdem, ob der Lötkolben und die Schaltung geerdet (Schutzleiter) sind, gibt das auch einen elektrischen "Peak". War die Schaltung während des Lötens in Betrieb? Bereich Forschung heißt meist kleine Stückzahlen (<100/a). Da kann man schon überlegen, ob etwas teurere Bauteile (= fertiger Oszillator) insgesamt nicht günstiger kommen als die Arbeitszeit. Nicht falsch verstehen, ich bin ein Freund von Wissen und Verständnis aufbauen, aber manchmal zählt eben das Ergebnis und nicht der Weg.
Hallo Stefan, das Ding war aus. Ich unterstelle, dass in dem Moment die Flussmittelreste, die das Wasser gebunden haben, verfolgen sind. Stimmt es sind kleine Stückzahlen. Das Problem ist aber, dass ich jetzt keine Zeit für ein Redesign habe. Ich muss es also entweder zum laufen bekommen, wie entworfen, oder minimalinvasiv das Ding zu ändern. Oszillator wäre da mit Sicherheit eine Lösung, aber der ist bei 5V zu groß zum reinfrickeln und ich muss auch sowas bestellen. Glücklicherweise läuft es auch nach mittlerweile 26 Stunden immernoch. Ich bin guter Hoffnung, dass es so war, wie gedacht (+Fuses). Gruß Christoph
Um den Erkenntnisgewinn ein wenig zu erhöhen, könntest Du ja, sobald Du mit dem Zustand zufrieden bist, mal die Fuses auf den alten Zustand zurückstellen und nochmal testen. Das wäre nett.
Sören schrieb: > Ahh ok Kurt, > > hab ich wohl falsch aufgefasst! > War meine Unachtsamkeit, nicht deine! > Das mit dem Finger ist relativ simple! Ich hatte Quarze und einen AVR > ohne das Fuse für 16MHz laufen. Beim berühren war es dann vorbei mit dem > Takt. Mein DIAMEX-AVR USB-Proger bringt mich immer wieder durcheinander, denn er zeigt eine lange Liste von möglichen Einstellungen ohne das ich da konkret was rauslesen kann wofür die dann gehören. Hier kam da nun auch ein bisserl Klarheit rein (Stromverbrauch steigt bei -harter- Ansteuerung. > Auch am Oszi konnte man eine niedrige Spannung messen die dann > zusammenbrach. Mit dem Fuse für High-XTAL war die Quarzsopannung bei > knapp 5V und lief so stabil das man auch ein Handy auf die Schaltung > legen konnte ohne das der AVR zu mucken (türkisches imperativ?) beginnt! Das mit dem Zusammenbrechen der Amplitude beim "hinschauen" ist schon ein starkes Indiz das was nicht so recht stabil läuft. (mucken wird bei uns hier schon verstanden und auch verwendet) Kurt
Klaus schrieb: > Um den Erkenntnisgewinn ein wenig zu erhöhen, könntest Du ja, sobald Du > mit dem Zustand zufrieden bist, mal die Fuses auf den alten Zustand > zurückstellen und nochmal testen. Das wäre nett. Braucht er nicht. Sein Fehler wird sich mit Sicherheit nicht wiederholen, ob mit oder ohne Fullswing. Anständig zu löten lernen und es wird keine Probleme geben.
Klaus schrieb: > Um den Erkenntnisgewinn ein wenig zu erhöhen, könntest Du ja, sobald Du > mit dem Zustand zufrieden bist, mal die Fuses auf den alten Zustand > zurückstellen und nochmal testen. Das wäre nett. Wieder so ein Quatsch. Ohne 'full swing' bei 16 MHz kann man sich ganz abstruse Fehler einfangen. Laut Datenblatt muß diese Option bei 16 MHz verwendet werden; daran sollte man sich tunlichst halten.
> Ohne 'full swing' bei 16 MHz kann man sich ganz abstruse > Fehler einfangen. Laut Datenblatt muß diese Option bei 16 MHz > verwendet werden; daran sollte man sich tunlichst halten. Wo ist diese Stelle zu finden? Bislang hatte ich mich an 'Table 9-3. Low Power Crystal Oscillator Operating Modes' gehalten, die vierte Zeile '8.0 - 16.0'.
S. Landolt schrieb: > Bislang hatte ich mich an 'Table 9-3. Low > Power Crystal Oscillator Operating Modes' gehalten, die vierte Zeile > '8.0 - 16.0'. Oh, das stimmt! Als Anhänger des Alten Testamentes (ATmega8) setze ich bei Fclock > 8 MHz immer CKOPT. Den ATmega328 betreibe ich mit 20 MHz, weshalb auch hier immer CKOPT gesetzt ist: gebranntes Kind scheut das Feuer ;-)
m.n. schrieb: > Wieder so ein Quatsch. Ohne 'full swing' bei 16 MHz kann man sich ganz > abstruse Fehler einfangen. Laut Datenblatt muß diese Option bei 16 MHz > verwendet werden; daran sollte man sich tunlichst halten. Das ist natürlich völliger Unsinn. Weder steht im DB, daß man zwingend FullSwing verwenden muß noch gibt es einen physikalischen Grund dafür. Natürlich kann man auch mit dem LowPower-Oszillator bei 16MHz (und auch bei 20MHz) arbeiten. Jedenfalls, wenn die Bürde-Kapazitäten entsprechend dem verbauten Quarz/Keramik-Resonator und den parasitären Kapazitäten des Aufbaus optimal passend gewählt wurden. Dann erreicht man nämlich effektiv fast dieselben Amplituden wie im FullSwing-Betrieb, nur halt mit deutlich weniger eingebrachter Energie. Das nennt sich Resonanzfall! Schon irgendwann einmal was davon gehört? Das Problem bei den verwendeten Murata-Resonatoren ist halt nur, daß eben genau diese Optimierung nicht möglich ist, weil die Bürdekapazitäten integriert und damit unveränderbar sind. Und in der obermiesen Genauigkeitsklasse halt meist weit weg davon sind, optimal zu sein. Das allerdings hat durchaus einen physikalischen Grund: Die Dinger, bei denen es besser paßt, werden einfach in einer der höheren Genauigkeitsklasse verkauft. Es sei denn, der Markt dafür ist gerade zu klein, dann passiert eben das Horrorszenario: Es gibt eben einfach mal die eine oder andere Charge, die zwar die physikalisch in die höheren Genauigkeitsklassen gehört, aber rein aus Marketing-Erwägungen in der LowCost-Klasse verkauft wird, weil für die höheren Klassen gerade nicht genug Bedarf ist und dort die Preise hoch gehalten werden sollen. Und das beste Mittel dafür ist nunmal künstliche Verknappung der Ware. Und da andererseits auch keiner der verwichsten BWLer etwas wegwerfen mag, was schon Kosten verursacht hat, landet's dann halt im LowCost-Bereich und verursacht dort halt gelegentlich Probleme durch vorzeitiges Ableben, weil man mit dem Standard-Design viel mehr Energie reinpumpt als eigentlich nötig wäre. Gelegentlich eben auch zu viel... Der einfachste Ausweg aus dem Dilemma ist: Von vorherein höhere Genauigkeit kaufen. Da paßt dann alles viel besser und man muß nur noch das eigenen Layout passend machen. Dann klappt's auch mit Keramik-Resonatoren zuverlässig mit LowPower-Oszillator. Tja: Geiz/Gier ist nicht immer geil, nur für BWLer, die sich für die Folgen ihres Tuns nie verantworten müssen, weil sie jederzeit glaubhaft behaupten können, von der fachlichen Seite sowieso keine Ahnung gehabt zu haben...
c-hater schrieb: > Das ist natürlich völliger Unsinn. Weder steht im DB, daß man zwingend > FullSwing verwenden muß noch gibt es einen physikalischen Grund dafür. Ich hatte meine Aussage diesbezüglich relativiert; das hättest Du gelesen haben können. Beim Mega8 war CKOPT bei 16 MHz ein Muss - aber soll jeder selber drauf kommen.
Ok, so wie es aussieht liegt es daran, dass ich ein anderes Flussmittel verwendet habe. Bei dem alten waren kleine Rückstände kein Problem. Hier funktioniert nach pedantischer Reinigung alles. Auch die Fuses scheinen - zumindest in diesem Falle - nicht den Einfluss zu haben. Trotzdem ändere ich jetzt alles mit 16 Mhz auf "Full Swing". Gruß Chrisoph
Christoph N. schrieb: > Trotzdem ändere ich jetzt alles mit 16 Mhz auf "Full Swing". Mach das. Auf die Dauer hilft nur Power. MfG Paul
Solltet euch mal mit HF Technik befassen, trimm Kondensatoren um 15 pf eventuell parallel zum Quarz. Sollte ohne Probleme schwingen sonst mal über Quarze lesen bringt bestimmt mehr. Resonatoren sind keine Quarze. Michelle
@ Christoph > Auch die Fuses scheinen - zumindest in diesem Falle - nicht > den Einfluss zu haben. Magst Du noch kurz erzählen, wie lange Du mit den alten Fuse-Settings getestet hast und wie lange mit den neuen? Das würde mich interessieren.
> und damit unveränderbar sind
Naja, beide Anschlüsse der C's sind von außen zugänglich, d.h. es steht
eine halbe Unendlichkeit zum anpassen zur Verfügung. Nur das Verkleinern
ist verwehrt :-)
Dem Erkenntnisgewinn halber, noch mal ein paar-Scopebilder, die Fullwing und nicht Fullswing vergleichen (mit dem Resonator). Es läuft (mit Fullswing) und ist damit für mich ansonsten Abgeschlossen. Nochmals vielen Dank an alle Beteiligten!
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.