Forum: Mikrocontroller und Digitale Elektronik Bei WDTON hängt sich MEGA324 auf


von Daniel B. (scheinleistung)


Lesenswert?

Hallo zusammen,

Ich möchte beim ATMEGA 324 den watchdog wie bei jedem Projekt aktivieren 
und regelmäßig in der while-Schleife (main) resetten.
Im Gegensatz zu allen ATMegas mit denen ich bisher gearbeitet habe, 
funktioniert das hier nicht. Alle Ausgänge pulsieren und die Elektronik 
lässt sich nicht mehr aufstarten. Deaktivere ich die WDTON fuse geht es 
wieder.
Habt Ihr eine Idee woran das liegt?

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Die Zeit falsch eingestellt?
Dann beißt der Hund zu bevor er resettet wurde.

von Martin K. (maart)


Lesenswert?

Welche Kläfffrequenz hast du denn eingestellt?

von Daniel B. (scheinleistung)


Lesenswert?

Jetzt gehts! Ich habe 2sec eingestellt aber offensichtlich nicht früg 
genug. Ich habe es in der main nur 3 Zeilen höher gestellt und schon 
gings!

Jetzt habe ich nur das Problem dass ich in einer bestimnten Sequenz 
ABSCHALTEN möchte aber die library funktioniert nicht! disable_wdt() hat 
keine Auswirkung ...??

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Rate mal wieso die fuse ALWAYS ON heißt?!?

Um den ersten Kläffunterdrücker so früh wie möglich auszuführen kannste 
sowas ganz oben in die main.c schreiben:
1
void wdt_init(void) __attribute__((naked)) __attribute__((section(".init1")));
2
3
void wdt_init(void)
4
{
5
    wdt_reset()
6
7
    return;
8
}

von Daniel B. (scheinleistung)


Lesenswert?

Denkfehler :P

Danke!!

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.