Power-Down will nicht so richtig!

Gast #97177
Lesenswert?

Hi!

Habe Probleme mit dem Sleep-Mode Power-Down im ATTiny26.
Der Idle-Mode geht einwandfrei.
Die CPU kommt zurück bei Timer-IRQ und PIN-Change-IRQ.
Nur bei dem Power-Down geht das irgend wie nicht so richtig.
Laut Docu kommt die CPU bei Pin-Change zurück.
Im Power-Down reagiert er auf die PortB-Pins aber irgend wie nicht auf
die PortA-Pins.
Und bei den PortB-Pins ist es irgend wie so, das nur ein Wechsel von
high auf low und dann auf high gemacht werden muß, das die CPU aus dem
Power-Down zurück kommt.
Habe den Code (ASM) auch so geändert, das die CPU während ein Timer-IRQ
läuft (für Counter-Software) nicht in den Power-Down geht, also nur,
wenn der Timer abgeschaltet ist.

Gruß
Andi
Gast #97178
Lesenswert?

hi,

auf seite 42 datasheet is 'ne tabelle mit den wake-up sources. aus
power-down kriegste das teil nur mit 'usi-startcondition' (reicht
vielleicht schon ein pin-change) oder mit level int0 (nur high nach
low) wieder zum leben.

gruss, harry
Gast #97179
Lesenswert?

Dachte eigentlich, auf Seite 42 steht auch was von Pin-Change für den
Pin-Change-IRQ.
Na ja, egal.
Muß ich halt mit 12 statt 7mA leben oder ich schaff mir mal eine
low-Power-Version an.
Ach ja: Ist der Unterschied mit dem Gesammt-Stromverbrauch zwischen 3V
und 5V eigentlich sehr Groß?
Oder ist das egal da der Spannungsregler dann von der 12V-Quelle statt
7V 9V auf Masse abführen muss?
Gibt es eigentlich einen Unterschied des Gesammt-Verbrauches wenn ich
statt einen 78S05 (max. 2A) einen 78L05 (max. 100mA) einsetze?

Gruß
Andi
Gast #97180
Lesenswert?

Der sollte sich schon mit Pin-Change wecken lassen. Selber benötigt habe
ich das mal bei einem Tiny12, und da ging das ganz hervorragend.
Allerdings ist das im Power Down etwas unempfindlicher (ebenfalls Seite
42):

"Note that if a level triggered external interrupt or pin change
interrupt is used from Power-down mode, the changed level must be held
for some time to wake up the MCU. This makes the MCU less sensitive to
noise. The changed level is sampled twice by the Watchdog Oscillator
clock, and if both these samples have the required level, the MCU will
wake up."
Gast #97183
Lesenswert?

Das mit dem halten des Pegelwechsels, jetzt ohne WatchDog, hab ich ja
zuerst probiert gehabt.
Also, Pegel ist Anfangs high, Pullup an dem Pin ist an, ich drücke nun
die Taste auf meinem Testboard für den entsprechenden Pin und er kommt
nicht aus dem Power-Down raus.
Ich lasse den Taster los, drücke nochmals ein paar Sekunden und es
passiert nix.
Bei einem anderen Pin bei dem der µC eigentlich auch auf Pin-Change
reagiert ist es so, das der µC erst nach einem Wechsel von high auf low
und dann von low auf high machen muß damit der µC aus dem Power-Down
raus kommt.
Ich lass das nun mit dem Power-Down und benutze den Idle-Mode.
Da klappt alles.

Gruß
Andi

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