AVR Reseten wenn er hängt.? (Codevision)

Gast #151948
Hay an alle Profis

Ich habe eine Frage wenn mein AVR hängt oder einfach nichts mehr tut
wie kann ich ihn Reseten?

Ich habe gehört mit einen Watchdog oder Overflow aber ich habe keine
ahnung wie ich das Anstelle.

Icgh nutze als Compiler Codevision und einen Atmega16.


MFG: Fichte
Gast
das weiss ich das ist mir auch Vollkommen klar. nur möchte ich wenn der
AVR verbaut ist nicht immer rest Drücken oder hast du lust immer zu
drücken.???

Ich meine Er hängt nicht immer, es ist nur wenn er lange läuft macht er
eine Zeitlang ca. 1-2 min. nichts dann startet er ja wieder neu nur
möchte ich ihn wenn er hängt ca 5 sek. danach neustarten "OHNE RESET
TASTER"


MFG: Andre
Gast
Hallo,

man könnte den Watchdog verwenden. Das sollte in der Hilfe zum Compiler
stehen.
Der Watchdog wird einmal initialisiert, und dann musst Du ihn zyklisch
triggern, ansonsten löst er den RESET aus.

Gruss
Andreas
Gast
Ich würde mir erstmal Gedanken über die Software machen, bevor ich "mit
dem dicken Hammer" rangehe.

- Hast Du vielleicht einen Fehler in einer Zustandsmaschine?
- Läuft Dein Stack über?
- Findet malloc keinen Speicher mehr?
Gast
Seh ich ähnlich, SW die sich aufhängt zyklisch zu reseten kann dir ja
wohl kaum die gewünschte Funktionalität bringen, die dir von deiner SW
erhofft hast,oder???
Gast
Es scheint dieses Forum ist nicht für Leute die fragen stellen aber
danke für die "nicht Antworten"

Es ging Jediglich drum wie ich ein reset mache und nicht um die
Software aber da hier ja eh alle denken sie sind was besseres bitte.!


MFG: Andre
Gast
Was soll das jetzt? Andreas und Dirk haben Deine Frage mit einem
ziemlich guten Tip beantwortet ("Watchdog") - und der Hinweis, die
Ursache für die Notwendigkeit eines Resets zu suchen, ist alles
andere als unangebracht.

Denk mal über Deine Einstellung nach.
Gast
Ich brauche da nicht Nach zudenken Wie ich schon schrieb

danke für die "nicht Antworten"

Meinte ich die die immer ihren Senf dazugeben.
Klar bin ich dem

"Andreas und Dirk Dankbar"

aber auf den rest der Antworten kann man doch als unsinnig Betrachten.

Da ist nicht böse gemeint nur möchte man wenn man eine frage Stellt
eine Antwort und keine Korektur an der SW oder sonstiges.

ich weiss nicht wie du das Siehst.


MFG: Andre
Gast
Statt an einem Symptom herumzudoktern, würde ich nach der Ursache
suchen.

Insofern sind die Hinweise von OldBug, Fränk und Peter D. sehr wohl
ernstgemeint und alles andere als unsinnig.
"Es scheint dieses Forum ist nicht für Leute die fragen stellen"


Dieses Forum ist so, wie alle anderen auch.

D.h. hier postet jeder seine Meinung zu einem Thema, auch wenn es Dir
nicht paßt.

Und besonders die Meinungen von Leuten, die schon ein paar Jährchen
länger programmieren sind sehr wertvoll, da sie oft auf eigenen bereits
gegangenen Sackgassen beruhen und Dir nur diese Umwege ersparen wollen.


Wenn Du nur Fragen beantwortet haben willst, schicke sie zu Günther
Jauch oder ruf die Telefonseelsorge an oder einen kostenpflichtigen
Support.

In einem Forum bist Du dann jedenfalls falsch.
Es heißt nämlich mit voller Absicht "Forum" und nicht
"Supportcenter".


Peter
Gast
Ich unterhalte mich lieber mit Leuten, die die Kragenweite von Peter D.
haben, der nämlich fällt in diesem Forum durch sachliche, konstruktive
und mit Wissen angefüllte Beiträge auf.

Vermutlich ist er auch älter als 13.
Gast
> Ich habe eine Frage wenn mein AVR hängt oder einfach nichts mehr tut

Wenn Dein AVR "hängt oder einfach nichts mehr tut", ist das ein
Anzeichen dafür, daß die auf dem AVR laufende Software fehlerhaft ist.
Es gibt nur eine Möglichkeit, sowas in Ordnung zu bringen: Den Fehler in
der Software finden und beheben.  Alles andere würde das Problem nicht
wirklich lösen.
@Gerado

"Dieser Herr Dannegger ... hat leider eine miese Kinderstube gehabt
!!"


wie meinst Du das ?

Das Forum ist doch kein Pflichtenheft.

Ich finde es ganz unterhaltsam, wenn man etwas lockerer formuliert oder
auch etwas durch die Blume sagt.

Ein Technikforum muß doch noch lange nicht staubtrocken sein.


Peter
Nun zum Thema:

Es gibt im Web viele seitenlange Artikel zum Thema: "Wie man einen
Watchdog richtig triggert".

Daß das Programm hängt, muß nämlich noch lange nicht bedeuten, daß auch
der Watchdog zuschlägt !

Den Vogel hab ich mal jemanden abschießen sehen, indem er den Watchdog
im Timerinterrupt getriggert hat. Der lief dann auch schön brav durch,
bloß der Rest des Programms nicht.


Langer Sinn, kurze Rede:

Es muß nicht unbedingt schneller gehen, einen Watchdog richtig zu
implementieren anstatt einfach den wirklichen Fehler zu suchen.

Ob aber ein ständig zuschlagender Watchdog den Nutzer eines Gerätes in
helle Freude ausbrechen lassen wird, dürfte arg zu bezweifeln sein.


Peter
Gast
Salve,

LOL Watchdog per Timer triggern... das muß ich mir merken. :)

@Andre: Du darfst Dich nicht gleich auf den Schlips getreten fühlen
wenn Dir hier Leute einen guten Rat geben, der in eine andere Richtung
führt, als Du das erwartet hast. Nimm den Rat an, oder laß es. Aber
fang nicht an, hier Leute zu beschimpfen. Sonst stehst Du mit Deinem
Problem bald allein da.

Es ist nunmal so, daß es keinen Sinn macht, ein Problem mit dem
Watchdog zu "beheben". Das ist wirklich nur der Fallschirm für
Systeme, die wenn es wider Erwarten (!) aus irgendeinem Grund (z.B.
äußere Einwirkungen) zu einem Absturz kommt, das System nach
Möglichkeit zumindest in einen definierten Zustand fahren kann, um u.U.
materiellen oder körperlichen Schaden zu vermeiden
(Automotive-Anwendungen, etc.). Es ist nicht bestimmt für fehlerhafte
Programme, nach dem Motto "huch, Fehler, na was soll's, dann halt
nochmal von vorn".

Wenn es einen Grund gibt, daß Du das Problem per Watchdog lösen mußt,
dann sag das vorweg. Sonst kannst Du nämlich drauf warten, daß dieser
Lösungsansatz auf Kritik stößt.

Mark

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 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.