Forum: Mikrocontroller und Digitale Elektronik Watchdog erweckt Tiny25


von Patrick (Gast)


Lesenswert?

Mahlzeit allerseits

Mein Tiny25 ruht zu 99% der Zeit und ist somit im POWER DOWN Modus.

Nun habe ich einen Watchdog hinzugefügt. einfach nur mit 
wdt_enable(WDTO_1S); und wdt_reset();

Meines erachtens sollte er doch hiermit nie einen Interrupt auslösen, 
sondern nur einen Reset machen richtig?

Ist es nun normal dass dieser Reset auch während des POWER DOWN 
ausgeführt wird und der Tiny somit wieder startet?

Ich dachte da wäre nur wenn ich einen Interrupt eingestellt habe für den 
WDT?

Denn so würde das heißen, dass man den WDT immer disablen muss bevor man 
in den POWER DOWN Modus geht, richtig?

Schöne Grüße
Patrick

von Winfried (Gast)


Lesenswert?

Ja, ein Watchdog ist auch während Power-Down aktiv. Was wäre ein 
Wachhund, der in der Nacht schläft ;-)

von AVR-Fan (Gast)


Lesenswert?

Der Watchdog kann je nach Einstellung einen Interrupt, und danach einen
Reset auslösen, oder einen Reset alleine, aktiv ist der Watchdog
auch im Power Down. Wenn es ums Stromsparen geht kann man beim
Tiny45 (25 leider nicht) zusätzlich den Brownout-Dedektor abschalten,
(bei 25 geht das nur über Fuse) was ganz schön was bringt (einige µA).

Ein Watchdog, der im Powerdown nicht geht, ist suboptimal.

Ein Blick ins Datenblatt verrät die richtige Bit-Einstellung.

von avion23 (Gast)


Lesenswert?

Bau doch eine "leere" ISR für den watchdog. Er wacht dann sehr kurz auf, 
rechnet für ein paar Takte und legt sich wieder schlafen. Auf 1s gesehen 
ist der on-Anteil ungefähr 10^-6 - also vernachlässigbar.
1
// watchdog timer isr
2
// watchdog interrupts will be disabled when entering this ISR by hardware
3
ISR(WDT_vect){
4
  //reenable interrupts, else cpu will reset next WDT timeout
5
  WDTCR |= (1 << WDIE);
6
}

von Patrick (Gast)


Lesenswert?

Danke für die Antworten!

Ok, der schläft also nicht ;) danke!

Ich schalte den Watchdog einfach ab vor dem POWER DOWN.

Sehe keinen Grund wieso der an bleiben sollte.

Was ich nicht verstehe, was es mit dem Brownout zu tun hat? Wenn der WDT 
aktiv ist, heißt das doch nicht automatisch dass auch der Brown Out 
aktiv ist oder?

Schöne Grüße
Patrick

von Winfried (Gast)


Lesenswert?

Bei Brownout ging es in diesem Zusammenhang wohl nur um das Thema 
Stromsparen, ansonsten hat das nichts mit Watchdog zu tun. Brownout 
braucht so ich glaub 10-15 uA. Ich betreibe aber fast nichts ohne 
Brownout, die Gefahr undefinierter Hänger ist einfach zu groß.

von Patrick (Gast)


Lesenswert?

Hallo Winfried!

naja bei mir wird die Stromversorgung sicher nicht unter 3V fallen. Und 
falls doch, sollte das nicht sowieso mit dem Watchdog abgefangen werden 
können?

Schöne Grüße
Patrick

von Patrick (Gast)


Lesenswert?

Hallo,

Hab es mir nochmal genauer angesehen, ich betreibe ihn mit den internen 
9.6MHz RC-Oszillator, die Spannung geht definitiv nie unter 2.5V ( bis 
2.7V ist garantiert das er bis 10MHz läuft, könnte also schon ein 
Problem sein ? )

Wäre es sinnvoll hier den BOD auf 1.8V ( laut DBL dann zw. 1.6-2V ) 
einzustellen?

Schönen Gruß

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.