Bei WDTON hängt sich MEGA324 auf

OP #3283705
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?
OP #3283730
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 ...??
(Firma: fritzler-avr.de) #3283737
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
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren