Forum: Mikrocontroller und Digitale Elektronik Attiny 13 möglichst Stromsparend


von Cal (Gast)


Lesenswert?

Hallo,

ich bin gerade an einem kleinen Schulprojekt dran.
Nachdem wir nun die Grundstruktur erstellt haben, geht es darum den yC 
(Attiny13) möglichst Stromsparend zu betreiben.

Hier ein paar Eckdaten zum Projekt:
- Spannungsversorgung 3V
- Interrupt über externen Button sollte möglich sein
- Mit irgend einem Timer sollte ich 1h timen können
- Jede Stunde (oder eben durch den Button) wird dann ein Pin kurz auf 
High gesetzt

Viel mehr Funktionen hat der yC schon gar nicht mehr.


Ich habe einige Foren durchsucht, wie ich den Attiny13 am besten 
"programmiere", damit dieser möglichst Stromsparend läuft.
Ich bin aber noch zu keinem befriedigende Lösung gestoßen, welche 
Sleep-Modes ich verwenden kann und was ich zusätzlich noch abschalten 
könnte (und vorallem wie ich das Abschalten könnte).

Über Antworten würde ich mich sehr freuen.
Cal
Schöne Grüße

von H.Joachim S. (crazyhorse)


Lesenswert?

http://www.atmel.com/images/doc2535.pdf
Seite 31, da ist es sehr verständlich beschrieben.
Ausserdem: möglichst kleiner Takt, möglichst kleine Betriebsspannung.

von Georg G. (df2au)


Lesenswert?

Sieh dich mal hier
http://stefanfrings.de/avr_workshop/index.html
um. Das "Senso" Spiel macht fast genau das, was du suchst. Da musst du 
nur die Uhr nachrüsten.

von r. (Gast)


Lesenswert?


von r. (Gast)


Lesenswert?

Vergiss einen Tasteninterrupt. Das ist Schrott, wegen Prell und so. Lass 
ihn alle 8sec aufwecken, check, sleep.

von Peter II (Gast)


Lesenswert?

r. schrieb:
> Vergiss einen Tasteninterrupt. Das ist Schrott, wegen Prell und so. Lass
> ihn alle 8sec aufwecken, check, sleep.

zum aufwecken ist der Interrupt schon seine Berechtigung. Wenn der µC 
wach ist kann man immer noch den Pin im Timer abfragen.


Außerdem gibt es auch Anwendungen wo das Prellen keine rolle spielt. 
Wenn er wirklich einen Ausgang nach 1 Stunde schalten will, spielt es 
keine Rolle ob er den Timer wegen dem Prellen 5 mal startet.

von Falk B. (falk)


Lesenswert?

@ Cal (Gast)

>- Spannungsversorgung 3V
>- Interrupt über externen Button sollte möglich sein
>- Mit irgend einem Timer sollte ich 1h timen können
>- Jede Stunde (oder eben durch den Button) wird dann ein Pin kurz auf
>High gesetzt

>Viel mehr Funktionen hat der yC schon gar nicht mehr.

Siehe Sleep Mode. Allerdings ist der Tiny13 dafür nicht die beste 
Wahl, weil er keinen Anschluss für einen 32kHz Uhrenquarz ermöglicht. 
Wenn es aber nur um eine brauchbare "Eieruhr" mit 10% Genauigkeit geht, 
reicht der interne 128kHz Oszillator und die Nutzung des Timers.


>Ich bin aber noch zu keinem befriedigende Lösung gestoßen, welche
>Sleep-Modes

Hier geht nur "Idle".

>könnte (und vorallem wie ich das Abschalten könnte).

Siehe Artikel oben.

von Zip (Gast)


Lesenswert?

r. schrieb:
> Vergiss einen Tasteninterrupt. Das ist Schrott, wegen Prell und so. Lass
> ihn alle 8sec aufwecken, check, sleep.

Kommt auf die Implementation an. Dient die Taste nur zum Aufwecken ist 
es doch egal, ob die prellt. Als Bedienelement sollte/muß sie entprellt 
sein. Auch hier kommt es auf die Funktion der Taste an. Bei dem kleinen 
Tiny kann auch HW Entprllung statt SW Entprellung sinnvoll sein.

von Eumel (Gast)


Lesenswert?

Falk Brunner schrieb:
> Hier geht nur "Idle".


Wenn man den Watchdog benutzt kann man ihn richtig schlafen legen :)

von Gerald G. (gerald_g)


Lesenswert?

Ich habe den attiny mit dem watchdog Oszillator laufen lassen, in den 
power down modus geschickt und dann immer nach der längsten Zeit die der 
watchdog erlaubt ( ein paar Sekunden) kurz aufwecken und variable 
hochzählen lassen. Bei einem bestimmten Wert wird dann etwas ausgeführt 
und alles auf 0 gesetzt.
Das alle paar Sekunden aufwecken lässt sich nicht ändern, da man den 
internen Oszillator brauch. Bei mir hat das in einem Handy mit handyakku 
mehrere Monate gehalten.

: Bearbeitet durch User
von F. F. (foldi)


Lesenswert?

Low Power Consumption
– Active Mode:
• 1 MHz, 1.8V: 240 μA
– Power-down Mode: • <0.1μAat1.8V

Drunter wird es wohl kaum gehen.

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.