PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Quarz berührt: Neustart. Warum eigentlich?



Jaecko
03.11.2008, 11:49
Moin.

Mir ist jetzt schon ein paar mal aufgefallen, dass die AVRs nen Neustart machen, sobald man den Quarz am Metallgehäuse berührt.
Klar ist ja, dass ich durch die Berührung Störungen verursache.
Nur was mich jetzt interessieren würde: Was genau bedingt die Neustarts?

Würde nur die Frequenz verändert werden, müsst das Programm ja eigentlich weiterlaufen ohne Neustart; nur halt entsprechend schneller/langsamer.

mfG

zerush
03.11.2008, 12:06
Was du auf jeden Fall mal machen kannst, ist das MCUCSR Register auszulesen (siehe Datenblatt). Da steht dann drin, wodurch der Reset ausgelöst wurde...

Gruß,
Thomas

fhs
03.11.2008, 12:48
Hi,

dieses Phänomen habe ich noch nicht beobachtet. Oft verbinde ich das Quarzgehäuse mit Masse (wie ich es beim Amateurfunk auch immer getan habe). Ein kurzes Löten eines Drahtes an das Gehäuse hat bei mir bisher jeder Quarz ausgehalten.

Gruß

Fred

KingTobi
05.11.2008, 12:15
Wie sieht deine Schaltung denn aus?
Oft passiert sowas wenn bestimmte Pins kein klares Signal bekommen, was man schon dadurch lösen kann das man sie mit nem 10k Widerstand auf Masse zieht....

oberallgeier
05.11.2008, 16:52
... schon dadurch lösen kann das man sie mit nem 10k Widerstand auf Masse zieht....Das dürfte bei einem Reset-Problem keine gute allgemeingültige Lösung sein. Der Reset-Pin heisst ja genaugenommen /RESET, für stabiles Arbeiten wird dieser Pin mit 10k oder so mit Vcc verbunden.

thewulf00
05.11.2008, 22:23
Naja, die Grundfrage bleibt: Warum resettet er sich allein durch die Berührung des Quarzes? Eine Einstellung der stabilen Schwingung kann es ja nicht sein, sonst wäre er einfach nur langsamer oder schneller...

KingTobi
06.11.2008, 01:18
@oberallgeier
Keiner hat was von nem ResetPin gesagt! Nur davon das Pins ein klares/eindeutiges Signal brauchen.

Yossarian
06.11.2008, 09:44
Hallo
Wackelkontakt, kalte Lötstelle, Kurzschluß, Quarz defekt, EMV Probleme.

Mit freundlichen Grüßen
Benno

thewulf00
06.11.2008, 09:57
Also hast Du auch keine Erklärung. Schade.

KingTobi
06.11.2008, 10:46
Solange du nicht genau zeigst/schreibst (Schaltplan/Programm) was du gemacht hast, können alle halt nur vermuten.

oberallgeier
06.11.2008, 10:59
Hallo Jaecko,


... ein paar mal aufgefallen ... AVRs nen Neustart ... man den Quarz am Metallgehäuse berührt ...Zeige doch bitte mal die Schaltung+Bestückung von der Platine, an der dieser Neustart dem Gefühl nach am häufigsten passiert(e). Dann kann man mal sehen, ob da vielleicht eine mögliche Ursache ist.

Ich hatte die letzten Tage wiederholt meine Quarze angefasst und gerüttelt und es ist nichts passiert, solange ich nicht den Quarz wirklich rausgezogen hatte (Flash+Experimentierplatine (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=331177#331177)mit Quarz in einer Steckerleiste). (https://www.roboternetz.de/phpBB2/files/exp--2a-1159.jpg) Dabei hatte ich immer angenommen, dass diese Platinen lausig schlecht entstört sind.

Übrigens scheint mein controller nach dem Wiedereinstecken des gezogenen Quarzes relativ sinnvoll weiterzulaufen: Einfaches Programm mit Timer-Interrupt 50 µs, der hochgezählt wird und alle Sekunde eine LED toggelt, inzwischen wird ein LCDisplay angesteuert bei dem eine dreistellige Ziffer hochläuft mit waits zwischen jedem Hochzählen. Der Quarz war fünf oder zehn Sekunden nicht gesteckt. Den Quarz hatte ich mehrfach mit den Händen gezogen und wieder gesteckt und zweimal mit einer Pinzette. Ein Reset trat dabei nicht auf. Doch, einmal - als mir der Quarz auf die Elektronik gefallen war. Ich erkenne einen aufgetretenen Reset an einer eindeutigen Startzsequenz (m)einer StatusLED.

Überlege bitte, ob Dein Arbeitsumfeld ein Störfaktor sein kann - Yossarian hatte ja schon EMV-Probleme angesprochen. Wie sieht Dein Arbeitsplatz aus -?- Teppichboden -?- Kunststoffplatte auf der Arbeitsfläche -?- Wollhose oder -jacke auf Kunststoffstuhl (es reicht aber auch Kunststoffgewebe) -?- oder so ähnlich ?


... Würde nur die Frequenz verändert ... Programm ... ohne Neustart; ... schneller/langsamer ...Ich glaube, wenn das Programm statt 8 MHz nur 7,5 MHz läuft, dann muss man schon sehr genau hinsehen um das feststellen zu können (Stoppuhr, Oszilloskop oder so).


... was mich jetzt interessieren würde: Was genau bedingt die Neustarts?...Das interessiert mich mittlerweile auch - weil unsere bisherigen Antworten nicht so der Bringer sind/waren.

Jaecko
06.11.2008, 16:12
So, hat etwas gedauert, aber durch ne kleine Krankheit, die mich zur Zeit als Ping-Pong-Ball zwischen Bett und Klo missbraucht, geht grade nicht viel mit Basteln.

Hab mal eine der Schaltungen angehängt, wo das Phänomen auftritt.
Noch nicht eingezeichnet sind 1 100nF-Kerkos, 1x direkt am AVR und 1x am Stecker für die Stromversorgung.

Das bizarre ist aber, dass das auch bei "fertigen" Schaltungen auftritt, die ja eigentlich gegen sowas relativ immun sein sollten. Sobalds basteltechnisch wieder geht, versuch ich mal, MCUCSR auszulesen, damit man da schon mal was hat.

Ist es dann wieder, versuch ich den Tip mal, das Quarzgehäuse mit Masse zu verbinden.

Yossarian
06.11.2008, 20:04
Hallo
Da warst Du aber extrem geizig mit den Kondensatoren.
Puffer die 5V mit 10µ o.ä. , block den µC mit 100n.
Eventuell kann mit den 22p etwas variiert werden.
Mit freundlichen Grüßen
Benno

McJenso
06.11.2008, 20:22
Hallo,

wie sehen deine Fusebits aus?

Gruß

Jens

zerush
08.11.2008, 14:56
Sobalds basteltechnisch wieder geht, versuch ich mal, MCUCSR auszulesen, damit man da schon mal was hat.

Ich glaube, DAS würde uns erstmal auf den richtigen Weg bringen...
Wir wären dir sehr dankbar dafür :-)

Gruß,
Thomas

Jaecko
08.11.2008, 15:28
So... Murphys Law... gerade versucht, ne MCUCSR-Ausgabe zu machen... Quarz berührt... läuft weiter... Quarz nochmal berührt... immer noch kein Reset. Langsam wirds sehr bizarr...

oberallgeier
08.11.2008, 16:19
Hi Jaecko,

man (wer?) müsst sich mal die Mühe machen die Berichte über Fehler zu zählen, die nach Darstellung und Hilferuf im Forum plötzlich weg waren. Das ist nicht Murphy, das ist irgendein Elektronenheiliger (ist eindeutig zu identifizieren am Hochspannungs-Heiligenschein).

Ich sass vor drei Tagen an einem längeren Posting (Hilferuf wegen . . . ), hatte an dem Problem zwei Tage/Nächte verbraten *grrrrrr*, und hatte nochmal die Details durchgegangen - siehe da - eine einzige Portänderung und der Hilferuf war nicht mehr nötig.

Abgesehen davon solltest Du Deine Vorräte mal mit einigen Kondensatoren (sehr vielen) auffüllen und diese Dinge dann in Deinen Schaltungen unterbringen.

Jaecko
08.11.2008, 16:27
Der ominöse St. Electron hat sichs anscheinend doch wieder anders überlegt: Es klappte wieder. Was jetzt anders ist als beim vorherigen Versuch weiss ich nicht. Sonneneinstrahlung wirds ja kaum sein.

MCUCSR-Wert nach Anlegen der Stromversorgung: 0x01.
MCUCSR-Wert nach Softreset (Reset-Taster, ISP): 0x03.
MCUCSR-Wert nach Quarz-Neustart: ebenfalls 0x03, d.h externer Reset...

Durch Verbinden des Gehäuses mit Masse ist das Phänomen weg. Reproduzierbar, wenn die Verbindung wieder aufgetrennt wird.

Den kommenden Schaltungen werden wohl wirklich mal mehr Kondensatoren spendiert und die Quarzgehäuse (sofern vorhanden) mit Masse verbunden.

zerush
08.11.2008, 22:13
Vor allem an die Reset Leitung solltest du dann auch einen 100nF Kondensator packen ;-)

markusj
08.11.2008, 22:53
Dann geht aber DebugWire nicht mehr, die 100nF sind meines Wissens auch eher ein kleines zusätzliches Bonbon, der externe Pullup ist da wichtiger.

mfG
Markus