Hilfestellung Watchdog Implementierung

Gast #2553675
Hallo, ich möchte eine Software Watchdog Funktionalität für einen 
Mikrocontroller implementieren. Dazu gibt es auch eine Funktion die 
einen Reset auslöt. Wie bringt man so eine Funktionalität in der 
Applikation unter ? verwendet man da einen Timer bzw. Zähler der dann 
immer automatisch zurückgesetzt wird ?

Besten Dank im Voraus für jeden Beitrag.
Gast #2553788
tigger schrieb:
> verwendet man da einen Timer bzw. Zähler der dann
> immer automatisch zurückgesetzt wird ?

Der Watchdog ist der Zähler und (einmal gestartet) musst DU ihn 
periodisch zurücksetzen, sonst gibts den Reset (automatisch).
#2553996
Dietrich L. schrieb:
> tigger schrieb:
>> Software Watchdog
>
> ...halte ich für etwas sinnlos. Ein Software-Watchdog kann auch nichts
> mehr tun (z.B. Reset auslösen), wenn der Prozessor abgestürzt ist.
> Aber vielleicht meinst Du auch was anderes?
>
> Gruß Dietrich

Könnte man den "watchdog" nicht extern als analoge schaltung 
realisieren?
Diese dann über software immer wieder zurücksetzen.
Gast #2554009
Julian S. schrieb:
> Könnte man den "watchdog" nicht extern als analoge schaltung
> realisieren?
> Diese dann über software immer wieder zurücksetzen.

Doch, kann man und wird auch oft so gemacht gerade in 
Sicherheitstechnik.
Im wesentlichen besteht die Schaltung aus einem Hochpass, einem 
Kondensator, einem Entladewiderstand und evtl. noch einem 
Schmitt-Trigger / OP.
Der uC muss zyklisch im Programm einen Pin Toggeln. Durch den Hochpass 
kommen nur die Flankenwechsel durch(ansonsten würde auch ein ständiger 
High Pegel den Kondensator laden). Wenn der Kondensator voll ist, ist 
alles in Ordnung (der uC Triggert regelmäßig den Pin). Wenn der uC nun 
irgendwo hängen bleibt, wird der Kondensator über einen Widerstand 
entladen und der OP zieht den uC ab einer gewissen minimalen Spannung am 
Kondensator in den Reset.

Dafür Pin muss dann aber definitiv in der Software getriggert werden, 
nicht über einen PWM Counter o.ä. !!
Gast #2554028
NurEinGast schrieb:
> Aber der XC164 hat doch nen Watchdogtimer in der Hardware.....
> Wieso nimmst Du den nicht ?

Evtl. zu langsam bzw. zu schnell!?
Mit einem externen kann man theoretisch jede Zeitkonstante machen die 
man möchte. Mit einem Internen nur die vorgegebenen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.