(Dieser Beitrag wurde geloescht)
Der Watchdog kann (theoretisch) nicht hängenbleiben, da dies ein Hardwaretimer ist, der - einmal gestartet und nicht rückgesetzt - von alleine überläuft und den Reset auslöst. Bist Du sicher daß Du ihn richtig initialisiert hast? Einige AVRs habe WDTON-Fuses, es ist sicherer, diese zu setzen. Dann kann im Zweifelsfalle zwar der Zahlenwert im Timer durcheinandergeraten (hatte ich noch nicht), aber der Watchdog kann nicht durch Software deaktiviert werden.
Wenn dein ESD-Puls einen Latch-Up (Zünden der parasitären Tyristoren im Chip) auslöst, hilft nur noch "Strom ganz weg, Strom wieder an" oder Austauschen des Chips. Ein einfacher Reset reicht nicht (Tyristoren werden erst nach unterschreiten des Halte-Stroms wieder hochohmig). Ob der Watchdog dann noch weiterläuft oder nicht, ist also garnicht relevant. Bessere ESD-Festigkeit geht nur mit externer Schutzbeschaltung, z.B. Suppressor-Dioden am Chip. /Ernst
Nur so als Tip: Die Hersteller der Controller schreiben nicht umsonst in ihre Datenblätter oder Appnotes rein, dass man sich auch eine ext. Schutzbeschaltung einfallen lassen soll. Jedes halbwegs industrietaugliche Gerät hat eine entsprechende Schutzbeschaltung. Und hält dann 4kV (Kontakt-) bzw. 8kV (Luftentladung) stand. Auch ein sauberes Platinendesign ist wichtig, damit sich bei einem ESD nicht Potentialdiffrerenzen auf der Platine bilden können. Ausserdem arbeitet man in der Industrie auch mit sog. ESD-Schutzbereichen, dass man auf die Teile kein ESD bei der Verarbeitung draufschiesst. Es mag einige Teile geben, die sowas tolerieren, aber sehr viele Bauteile werden dadurch latent geschädigt und können dann, wenn sie nicht sofort ausfallen, auch ein paar Tage oder Wochen später plötzlich ausfallen. Übrigends, dein Watchdog wird Dir da wahrscheinlich nix nützen, da der mit dem Rest des Controllers verbunden ist und damit ebenfalls abgeschossen wird. Kann sein dass wie im vorigen beschrieben ein Latch up auftritt. Dann wäre alles egal, da dann auch die Reset-Schaltkreise totgelegt sind. Wenn Du einen Controller mit Debug-Wire hast und im Debug-Wire-Modus ein ESD auf den Reset kommt ist der Controller mit sicherheit reif für den Austausch, da man ihn dann nicht mehr aus dem D-Wire Modus rausbekommt und die Debug-Wire Schaltung damit wohl abgeschossen wird. (hatten wir in der ifrma schon, und einen QFN auszutausche ist nicht gerade jedermanns Lieblingsbeschäftigung)
Aktivier mal die ckopt Fuse zu setzen, falls nicht schon geschehen. Sowas hatten wir auch mal. Diese Fuse veranlasst den Oszillator eine volle Rail-to-Rail Schwingung zu erzeugen. Andernfalls wird aus EMV Gründen weniger Pegel benutzt. Vielleicht hilft das......
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.