Hallo Leute, ich habe hier ein Problem mit einer selbst gebauten Platine. Auf dem Teil sitzt ein kleiner Mikrocontroller und ein paar Schnittstellen. das Problem was ich nun habe, ist dass wenn ich mit den Socken am Boden reibe (Teppich), ich mich so auflade und das Teil bei einer Entfernung zu meinem Körper von ca. 30cm einfach gnadenlos neu startet. Wenn ich dann mein Fuß an die Heizung halte, hört man die Entladung (durch einen "knall", wie man's kennt)...genau in diesem Moment in dem der Funkenüberschlag stattfindet, führt der Prozessor erneut einen Reset durch. Nun stellt sich mir die Frage was da für ein Mechanismus dahinter steckt und wie ich ihn beseitigen kann. Vor allem komisch finde ich, dass es genau in dem Moment passiert in dem ich mich entlade. Genau in dem Moment der Entladung kann ich mit dem Oszi auf der Versorgungsspannung auch ordentliche Verzerrungen erkennen, die scheinbar ausreichen um den Prozessor zum Reset zu bringen. Ich habe schon haufenweise Kondensatoren von der Versorgungsspannung gegen Ground gemacht, gebracht hat bis jetzt alles nichts. Hat jemand schonmal so ein Phänomen bei sich beobachtet ? Viele Grüße, Frank
Jede Menge Kondensatoren am falschen Platz helfen nichts. Zeig mal deinen Schaltung und das Layout dazu, dann kann man dir vielleicht einen Rat geben.
Das Verhalten ist Standard wenn man nichts, oder nicht das Richtige macht. An allen Kabeln, die die Leiterplatte verlassen muessen kondensatoren gegen GND, resp gegen das Gehaeue. Bei Dc kann man 100nF, bei seriellen Verbindungen vielleicht 1nF, bei Analogsignalen vielleicht 10nF.
Hallo, interesant hier ist nicht warum es passiert, sondern warum die Schaltung nachher noch immer funktioniert !!?
Karlheinz schrieb: > sondern warum die Schaltung > nachher noch immer funktioniert !!? Wieso denn nicht? Sie wird GEstört, aber nicht ZERstört. Gruss Reinhard Frank1986 schrieb: > genau in diesem Moment in dem der > Funkenüberschlag stattfindet, führt der Prozessor erneut einen Reset > durch. Mit einem billigen Teppich machst du jede ungeschützte Elektronik nieder. Bei direkter Berührung wahrscheinlich sogar für immer. Probier doch mal deine Schaltung in einem Metallgehäuse. Ist günstiger als ein echter Perser. Gruss Reinhard
Wie ist der Resetpin beschaltet? Ein häufiger Fehler ist auch, daß Anfäger Eingänge mit externen Interrupts abfragen. Neben der hohen Störemfindichkeit können auch leicht Race-Conditions auftreten.
An Reinhard Kern Sag mal: denkst du auch mal von 12 Uhr bis Mittag ??? Du erklärst mit ganz grossspurig > Sie wird GEstört, aber nicht ZERstört. und schreibst dann nur wenige Zeilen später > ...Bei direkter Berührung wahrscheinlich sogar für immer. Ist das dann eine "Störung für immer" oder was ???
Karlheinz schrieb: > Sag mal: denkst du auch mal von 12 Uhr bis Mittag ??? > Du erklärst mit ganz grossspurig Bitte lesen. Der TO erklärt, dass er 30 cm von der Schaltung entfernt ist, damit macht man Elektronik nicht kaputt. Aufgeladen und bei Berührung sehr wohl. Was bitte ist daran jetzt grossspurig? Dass eine µProzessorschaltung nach einem durch eine Störung erzeugten Reset wieder korrekt läuft, ist der Normalfall - genau deshalb sind Watchdog-Schaltungen sinnvoll. Aber die muss man natürlich auch verstehen können. Worum es geht haben alle hier begriffen ausser dir, da kann man wohl nichts dran ändern, du musst halt dumm sterben. Gruss Reinhard
Oh, Oh bei dem Spielchen des TO sollte man ihm besser sagen dass er mit einer "dauerhaften Störung" rechnen muss!!!
Huch....so viele antworten :) Danke an Alle für die Hilfe! Der Reset PIN ist nur auf den JTAG gelegt (der Controller (ein PSoC) hat interne Pull Widerstände). Aber das sollte nicht zu einem Problem führen. So deutlich wie man die Störungen auf dem Oszi sieht, muss der Controller einfach neu starten. Es handelt sich um eine relativ große Platine (20x20cm) mit großen Masseflächen (auf das das Signal ja gut einkoppeln könnte). Gibt es irgendwo eine Sammlung von Tipps & Tricks die man gegen solche Störungen anwenden kann ? So oft wie die Auftreten muss sich das irgendwie verbessern lassen. Meine Geräte die ich hier noch so hab starten ja auch nicht alle neu wenn ich mich auflade. Und wie geht man denn mit einem unvermeidbaren Problem um ? Wenn das ganze durch geeignete Maßnahmen gebessert hat und doch einmal ein Reset auftritt, dann muss ich ja das Gerät irgenwie wieder in den alten Zustand bringen. Bleibt der RAM Inhalt bei solchen Resets erhalten und wie erkenne ich in der Software ob es ein regulärer Reset war oder eine Störung ? Viele Grüße aus Starnberg, Frank
Störfest machen, nicht rumdoktern! Weg mit den Antennen am Board. Poste doch mal ein Foto des Aufbaus.
Vielleicht löst die Brown-Out Detection von den Mikrocontroller aus und startet diesen danch wieder neu. In deien Diagramm kann man erkennen das Aufgrund der Störung die Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch 4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung. Auf welchen Wert ist das entsprechende Fusebit gesetzt? Probiere mal 2.7V als Schwellwert aus und versuche den Fehler wieder zu reproduzieren. Falls der Fehler nicht mehr Auftritt kennst du zumindest die Ursache für diese Resets. Für dein Problem gibt es keine so einfachen Tipps& Tricks da man sowas (sehr früh) in der Entwicklungsphase der Baugruppe einplanen muss. (z.B beim Entwurf der Leiterkarte oder des Schaltungstechischen Aufbau) Du hast aber schon die Implementierung abgeschlossen und bist somit mindestes 2-Projektphasen zu spät dran. Alles andere ist nur Pfuscherei und bekämpft den eigetlichen Fehler nicht. Zeig doch einfach mal Bilder von deinen Aufbau!
Nachtaktive schrieb: > In deien Diagramm kann man erkennen das Aufgrund der Störung die > Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch > 4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung. Mir scheint du hast das Bild falsch abgelesen...Die Spannung fällt kurzfristig auf ca 0.7 Volt ab und das ist für den Betrieb natürlich ein wenig zu wenig :) Also eher nicht die BrownOut Detection. was ist eigentlich ein TO ? Tzzz...immer diese Abk.s :)
Apfelkopf schrieb: > Nachtaktive schrieb: >> In deien Diagramm kann man erkennen das Aufgrund der Störung die >> Versorgungsspannung kurzzeitig auf 4.68V abfällt - Zufällig sind auch >> 4.7V ein Einstellbarer Schwellenwert für diese Unterspanungserkenung. > > Mir scheint du hast das Bild falsch abgelesen...Die Spannung fällt > kurzfristig auf ca 0.7 Volt ab und das ist für den Betrieb natürlich ein > wenig zu wenig :) > Also eher nicht die BrownOut Detection. > was ist eigentlich ein TO ? Tzzz...immer diese Abk.s :) Uff. Tatsache - Danke für den Hinweis! Hatte V(max1) und mir beim zweiten das V(min) einfach dazugedacht... =D Somit ist das Gedankenkonstrukt mit der BOD natürlich hinfällig.
Die Leitung vom Reset Pin zum JTAG Connector ist eine Antenne (wie alle Leitungen). Der Eingangswiderstand des AVR ist grob geschätzt 50k Ohm - das ist sehr sehr viel. Fernseher haben ca. 1000 mal weniger Ohm am Antenneneingang. Die Funkentladung zwischen Deinem Fuß und dem Heizkörper erzeugt eine breitbandige elektromagnetische Welle, die von praktisch allen Antennen empfangen wird. Du kannst Leitungen unempfindlicher machen, indem Du sie mit Widerständen und/oder Kondensatoren belastest. Beim Reset-Eingang nimmt man üblicherweise einen zusätzlichen externen 10k Ohm Widerstand und einen Kondensator mit 1 - 10µF. Bedenke, dass alle anderen Leitungen ebenfalls (unerwünschte) Antennen sind. Wenn Dein Reset Problem behoben ist, könnte sich gleich das Nächste Problem offenbaren. Funken-Entladungen sind schon ziemlich nervig.
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.