Forum: Mikrocontroller und Digitale Elektronik Durch welche äußeren Einflüsse kann sich mein Mikrocontroller aufhängen?


von Benjamin (Gast)


Lesenswert?

Hallo,
mich würde mal interessieren, durch welche äußeren Einflüsse sich ein 
Programm im Mikrocontroller aufhängen kann. Sprich: Ich lasse ein 
relativ simples Programm in einer Schleife laufen, bei dem ich mir 
sicher bin, dass kein Software Bug vorliegt.
Wenn ich am nächsten Morgen alles überprüfe sehe ich das das Programm 
nicht mehr ordnungsgemäß läuft. Dh. es hat sich irgendwann nach ein paar 
Stunden aufgehängt, durch irgendwelche Effekte (Überspannungen? 
EM-Wellen?) die ich nicht verstehe.
Mittlerweile habe ich das Problem mit einem Watchdog gelöst aber die 
theoretischen Hintergründe interessieren mich immernoch. Wie gesagt, ich 
bin mir zu 100% sicher das es NICHT an der Software selbst liegt.
Gerne auch Literaturempfehlungen.

Gruß Benjamin

von Ben _. (burning_silicon)


Lesenswert?

Blitzschlag

von Peter II (Gast)


Lesenswert?

Benjamin schrieb:
> Wie gesagt, ich
> bin mir zu 100% sicher das es NICHT an der Software selbst liegt.

aber wenn der Watchdog noch reagiert, deutet vieles darauf hin das der 
µC noch etwas macht. Es muss also noch der Takt vorhanden sein, damit 
sollte er auch noch irgendwelche befehle abarbeiten (auch wenn es 
eventuell die falschen sind weil er befehle in datenbereich ausführen 
will). Und dann liegt doch wieder der vermutung nahe das es sich um ein 
Software fehler handelt.

von Daniel V. (danvet)


Lesenswert?

Hmm.. mit einem Watchdog gelöst... das deutet doch eindeutig auf einen 
Softwarefehler hin. Dafür ist der Watchdog doch da.

von A.v.Grafenstein (Gast)


Lesenswert?

Um die äußeren Einflüsse beurteilen zu können, wäre es hilfreich zu 
wissen, was denn außen alles dranhängt :) Zu allermindest eine 
Versorgung wird ja vermutlich gegeben sein.
Dann wären natürlich noch die Umgebungsbedingungen interessant.

Gruß, Alex

von Uwe (Gast)


Lesenswert?

Zumeist ist die Spannungsversorgung schuld. Du könntest aber einfaxchmal 
das Reset Status Register auslesen und herausfinden ob irgendetwas einen 
Reset getriggert hat (haben die meisten uCs). Spannungsversorgung 
tauschen bzw. Akku verwenden, wenn Fehler immer noch da soviel wie 
möglich abschirmen. Reset Pin Beschaltung überprüfen usw. Schaltplan 
posten.

von Peter D. (pdiener) Benutzerseite


Lesenswert?

- Anlegen von Reset
- Falsche Versorgungsspannung (auch Transienten)
- EM-Feld
- Wechsel-E-Feld
- B-Feld
- Ionisierende Strahlung
- Mechanische Beschädigung (z.b. durch Vibration)
- Thermische Beschädigung
- Normale Alterung (nach vielen zig Jahren)
- Produktionsfehler
- Maskenfehler

Die Liste ist bestimmt noch unvollständig.

Grüße,

Peter

von Leopold S. (leopold)


Lesenswert?

Ev. auch
Spannung unstabil od. nicht geglättet,
fehlender Resetwiderstand,
fehlender Kondensator,
offene unbenützte Ein/Ausgänge
mfg

von Benjamin (Gast)


Lesenswert?

Vielen Dank das hilft mir schonmal sehr, vor allem der Tip mit dem 
Reset-Status-Register.
Der Mikrocontroller hängt auf einem Experimentierborad welches ich nach 
einem Bausatz aus einem Lehrbuch aufgebaut habe, von daher sollte die 
Spannungsversorgung OK sein.
Für meinen Fall, dass ich mit dem Mikrocontroller das Pulsen von LEDs 
realisiere, welche mit Stromstärken betrieben werden für die sie 
(ungepulst) nicht ausgelegt wären, reicht der Timeout des Watchdogs aber 
eigentlich aus.
Damit verhindere ich sozusagen dass da was durchbrennt, falls der 
Controller mitten im Programm stehenbleibt.

Trotzdem wollte ich in einem Anflug von Perfektionismus dem Problem auf 
den Grund gehen ;)

von Peter II (Gast)


Lesenswert?

Benjamin schrieb:
> Der Mikrocontroller hängt auf einem Experimentierborad welches ich nach
> einem Bausatz aus einem Lehrbuch aufgebaut habe, von daher sollte die
> Spannungsversorgung OK sein.

sehr mutige annahme.

Hier gibt es aber ein beispiel von einen Demo-Board wo fehler bei den 
Tastern vorhanden sind, bei jedem Tastendruck kann es passieren das der 
µC sich resetet. Keine Ahnung welches Board es war.

von Axel L. (axel_5)


Lesenswert?

Wie oft ich mir schon 200%ig sicher war, dass es nicht die Software ist, 
kann ich gar nicht mehr zählen :-)

Ansonsten: Spannungsversorgung, die beim Ein-/Ausschalten der LED was 
Böses anstellt.

Gruss
Axel

von Pegel (Gast)


Lesenswert?

Axel Laufenberg schrieb:
> Ansonsten: Spannungsversorgung, die beim Ein-/Ausschalten der LED was
> Böses anstellt.

Jou...z.B. Überlastung der Spannungsversorgung nach Zeit X (thermisch 
oder durch Strombegrenzung).

von Peter D. (peda)


Lesenswert?

99,99% der Fehler, die mit absoluter Bestimmtheit definitiv nicht und 
auf gar keinen Fall an der Software liegen können, liegen doch an der 
Software.


Peter

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
Noch kein Account? Hier anmelden.