initialer Wert von Variablen in Registern

Gast #722842
Lesenswert?

Hallo Forum,

werden Variable in Registern ala "asm R12" etc, eigentlich auch mit 0 
initialisiert ?
(scheint mir nicht so...)

2. Frage: ein "sleep" in Assembler ohne vorherige Aktion führt doch zum 
IDLE-Mode (ATTINY 2313) (ohne wesentliche Strom-Ersparnis oder ?

Vielen Dank,

weisnix
Gast #723555
Lesenswert?

das Ganze mal nach oben bring

1. Frage:Initilaer Wert von Variablen in Registern: Weiß es keiner genau 
??

2. Frage
Hat jemand eine Ahnung von meinem Problem mit dem Sleep-Mode

Danke schon mal für die Antworten
Gast #723564
Lesenswert?

Es geht mir auch um die Zuverlässigkeit unter verschiedenen 
Startbedingungen (z.B. uC nur kurz aus usw.) - Falls die Register nicht 
0 gesetzt werden, könnte das Verhalten z.B. auch von verschiedenen 
Chargen abhängen.
Moderator Persönliche Seite #723576
Lesenswert?

Die Register werden nicht verändert.  Ich bin mir nicht ganz sicher,
ob sie beim power-up reset von der Hardware auf 0 gesetzt werden.

Ja, ein sleep_mode() geht by default in den idle mode.  Nein, auch
der spart schon einiges an Strom, nur eben nicht so viel wie die
Modi, die auch den Hauptoszillator ausschalten können.  Wie viel
genau, steht in den typischen Werten des Datenblatts deines AVRs.
Gast #723597
Lesenswert?

Ok, dann muß ich halt noch etwas Platz einsparen und die Variablen 
ordentlich initialisieren.

Lt. Datenbalatt spart man ca 2..3 mA im Idle (bei 5V 8Mhz internem Takt 
(ATTINY 2313)) - hängt natürlich von der Idle-Zeit ab; hier war schon 
die Meinung zu hören, es würde in der Praxis keinen relevanten 
Unterschied machen.

Vielen Dank,

das hilft mir jetzt erst mal weiter.
Moderator Persönliche Seite #723608
Lesenswert?

Naja, ich finde einen Verbrauch von 1,5 mA statt 5 mA schon eine ganz
nette Einsparung, wenn man in der Zeit ohnehin nichts tun kann.  Bei
mir hat die main loop standardmäßig mittlerweile eigentlich ein
sleep_mode() am Ende.  Ob man damit nun wirklich in der Praxis was
einspart, hängt wohl wesentlich davon ab, welchen Anteil das Schlafen
am Ende hat.  Im Höchstfalle kann man offenbar etwas mehr als 2/3 der
Energie damit sparen oder anders gesagt, die dreifache Batterie-
lebensdauer erreichen.

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