Externer Watchdog-Reset für AVR erforderlich

Ich hatte eine Schaltung mit ATmega644PAinternem Watchdog-Timer, um den Controller durch einen Reset aus einem hängenden Zustand in einen bekannten zu bringen. aber mein Code hängt immer noch irgendwo in einer Schleife und führt dazu, dass das System nicht mehr reagiert.

Ich muss also eine externe Reset-Quelle verwenden, die einen Pin des Mikrocontrollers überwachen kann. Wenn der Pin-Status länger als 60 Sekunden konstant bleibt, wird der Controller zurückgesetzt.

In meinem Anwendungscode werde ich regelmäßig Pulse auf dem Pin bereitstellen.

Andere Vorschläge willkommen.

Antworten (3)

Normalerweise ziehe ich es vor, die zugrunde liegende Ursache der periodischen Ausfälle zu ermitteln, insbesondere wenn es sich ausschließlich um Software handelt, aber externe Energieverwaltungs- und Watchdog-Lösungen sind verfügbar. Sie können dazu beitragen, die Möglichkeit auszuschließen, dass einige Softwarebedingungen dazu führen, dass der Watchdog-Timer deaktiviert oder fälschlicherweise „gekickt“ wird.

Der erste Hersteller, der mir in den Sinn kommt, ist Maxim, und sie haben einen Anwendungshinweis zum Vergleich von internen und externen Watchdog-Timern , der lesenswert ist. Das Datenblatt , das den MAX6746-MAX6753 abdeckt, zeigt einige der verfügbaren Teile. Die Rücksetz- und Watchdog-Verzögerungen für diese Teile können durch ein externes RC-Netzwerk geändert werden.

Wenn Sie Softwareprobleme haben, sollten Sie den MAX6752 / MAX6753 in Betracht ziehen, der über einen Zeitgeber mit Fenster verfügt. Das bedeutet, dass der Watchdog zurückgesetzt wird, wenn der Watchdog sowohl zu schnell als auch zu langsam getriggert wird. Wenn diese Teile nicht geeignet erscheinen, zeigt eine Suche nach „Watchdog“ auf Digikey viele Ergebnisse in der Kategorie „PMIC – Supervisors“, die geeignet sein könnten.

Danke @Peter, Eigentlich werde ich meine Software debuggen, aber sie wird bereits verwendet, und ich muss ein neues Board-Design zur Herstellung senden, daher möchte ich auch den externen Watchdog einbeziehen

Die meisten Halbleiterhersteller haben Watchdog-Timer oder Supervisoren verfügbar. Verdammt, es gibt ungefähr 555 Zeitschaltkreise, die wie ein Wachhund fungieren. Und Sie könnten jederzeit Ihren eigenen auf einem Ersatz-Mikrocontroller aufpeppen. Von den Preisen der Watchdogs im Bereich von 1+ Dollar pro 1000 könnte ein 25-Cent-Mikrocontroller billiger sein.

Sind Sie wirklich sicher, dass die Verwendung eines externen Watchdogs eine gute Idee ist? Wenn die Hänger durch die Software verursacht werden, empfehle ich dringend, die Software zu reparieren.

Ich hatte Aufhänger, die dadurch verursacht wurden, dass das Interrupt-Flag nicht zurückgesetzt wurde. Stellen Sie sicher, dass Sie Ihres richtig setzen. Überprüfen Sie auch die Reset-Flags mit Ihrem Debugger. Und verwenden Sie die Brown-out-Sicherungen zum Schutz vor Netzteilproblemen.