Forum: Mikrocontroller und Digitale Elektronik RFM12 Strom sparen


von Horst G. (climbi)


Lesenswert?

Hallo,
ich habe ein RFM12 Modul am laufen.
Laut Datenblatt ist der STBY Stromverbrauch 0,3 yA

Davon bin ich jedoch weit weg.
Folgendes mache ich wenn ich in den Sleep Modus schalte
Befehl:&h8200
       (er =  0 Empfänger aus
        ebb = 0 Basis Empfangsteil aus
        et  = 0 Sender aus
        es  = 0 Synthisizer aus
        ex  = 0 Quarz Oszillator aus
        eb  = 0 Brownout aus
        ew  = 0 Wakeup aus)

       danach:
       SCk, SDI und NSEL auf Low

Ohne RFM12 Modul habe ich einen Stromverbrauch von 0,5yA
Mit aufgestecktem RFM12 Modul komme ich auf knapp 1 mA, selbst
wenn ich das RFM12 Modul wie oben beschrieben abmelde.

Prinzipiell funktioniert senden und empfangen, nur der Stromberbrauch
ist zu hoch.
Vielleicht hat ja noch jemadn eine Idee?
vielen Dank im Voraus
Gruß Climbi

von katastrophenheinz (Gast)


Lesenswert?

Hi,

probier mal das:
- Ausschalten mit 0x8201 (Disable clock output of CLK pin) statt 0x8200
- NSEL final auf HI und nicht auf LO

Gruss, Heinz

von c-hater (Gast)


Lesenswert?

Horst G. schrieb:

> Folgendes mache ich wenn ich in den Sleep Modus schalte
> Befehl:&h8200
>         ew  = 0 Wakeup aus)

Naja, ob das sinnvoll ist, hängt vom Gesamtkonzept ab. Bei meinem würde 
das für den "ewigen" Schlaf des Gesamtsystems sorgen, bis zum nächsten 
Powercycle...

>
>        danach:
>        SCk, SDI und NSEL auf Low

Das ist aber sicher Quatsch. SCK und SDI spielen keine Rolle, aber NSEL 
muß natürlich auf High (sprich: inaktiv) sein.

von Horst G. (climbi)


Lesenswert?

Hallo,
vielen Dank für die Tips.
Ich habe den Stromverbrauch im Powerdown Modus nun dramatisch senken 
können,was die Batterielebensdauer nun zumindest theoretisch um das 10 
fache erhöhen sollte.
Ganz kurz meine Anwendung:
Ein "Sender" fragt in festen Abständen bei seinen "Sateliten" die 
Temperatur ab. Nach einer Anfrage geht der Satelit in Stromsparmodus. 
Die Zeit des Stromsparmodus kann flexibel sein, sie wird vom Sender mit 
der Anfrage übertragen.
Sowohl der Sender als auch die Sateliten sind AVR Batterfly Module.
Vielleicht keine ganz billige Lösung, aber für mich sehr bequem, da 
gleich
ein (kleines) Display mit dabei ist und auch der Joystick für Eingaben.
Das Endziel ist eine Art Zwischensteuerung in unserer Heizungsanlage.
Um diese optimal zu beeinflussen benötige ich halt ein paar 
Temperaturen.
Und diese Frage ich eben per Funk ab, da mir eine Verkabelung zu 
aufwendig
war.

Und nun die Lösung zu meinem Problem.
Das RFM12 Modul meldet neue Daten über den FFIT Anschluß des Moduls.
Dieser geht beim Controller auf einen Interrupteingang.
Ich bin alles andere wie ein Mikrocontroller Experte und habe mir alles 
selbst über Bücher beigebracht. Und dort habe ich gelernt, dass man bei 
Eingängen den internen Pullup einschalten soll.
Das hatte ich auch ursprünglich so gemacht.
Wenn ich den Pullup des FFIT Anschluß ausschalte, funtioniert alles wie 
gehabt gut, der Stromverbrauch im Powerdown Modus ist jedoch nun wie im 
Datenblatt angegeben. Genial !!

Programieren tue ich übrigends mit Bascom. Ich weiß jetzt rümpfen viele 
die Nase.
Mir hat Bascom jedoch das Tor zum Microcontroller geöffnet. Ich kann nur 
sagen für mich passt es und ich bewundere den Mann, der das alles ganz 
alleine am leben hällt. Hut ab.
Ich als Gelegenheitsbastler finde diese Leistung enorm.
Viele Grüße Climbi

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.