Hallo,
um den Stromverbrauch eines Bauteils auf 0uA zu bringen, hatte ich
folgende Idee:
- GND-Pins mit GND verbinden
- VCC-Pin(s) mit einem uC-Pin verbinden
- Alle weiteren (Daten-)Pins mit uC-Pins zu verbinden
Schalte ich nun alle uC-Pins auf Output und LOW, so sollte kein Strom
mehr fließen. Soweit die Theorie.
Mache ich das Ganze mit einem RFM12 (2x GND direkt and GND, nsel, sck,
sdi, vcc, sdo, nrq, data und dclk an uC-Pins auf Output und LOW) zieht
mir der RFM12 ganze 70uA! Ich meine, alle Pins des RFM12 liegen auf GND,
wo kommt der Potentialunterschied her?
Meine Vermutung: Das "GND vom uC" hat ein anderes Level als das "GND der
Batterie". Ist aber nicht so.
Einen ähnlichen Effekt habe ich mit einem Beschleunigungssensor, dort
gehen 3uA "verloren".
Wo liegt mein Denkfehler?
Vielen Dank im voraus!
Sebastian
Sebastian Wille schrieb:> Schalte ich nun alle uC-Pins auf Output und LOW,
Die Frage dürfte wohl eher sein: Wie LOW ist denn das LOW.
Da in einem µC keine Relais verbaut sind, sonder irgendeine Form von
elektronischem Schalter, wird der µC-Ausgang nicht 100% auf GND gehen
können.
Sebastian Wille schrieb:> Aber wieso messe ich dann zwischen>> "uC-GND" und "Batterie-GND" exakt 0,000V?
Weil uC-GND und Batterie -GND für gewöhnlich verbunden sind.
Versuch mal am Ausgang zu messen.
> - VCC-Pin(s) mit einem uC-Pin verbinden> - Alle weiteren (Daten-)Pins mit uC-Pins zu verbinden> Schalte ich nun alle uC-Pins auf Output und LOW, so sollte kein Strom> mehr fließen. Soweit die Theorie.
Oder mal kurz ein recht hoher Strom von Vcc in den LOW-geschalteten
Output des Controllers.
Hallo Peter,
ich messe die 70uA vor der kompletten Schaltung, also direkt an der
Batterie bzw. am 3V-Netzteil. Den RFM12 kann ich komplett aus der
Schaltung entfernen (Sockel). Ist er draußen, gehen nur 10uA rein, also
am Rest der Schaltung kann es nicht liegen.
Alternativ kann ich den RFM12 per Software natürlich auch schlafen
legen, klar. Mich interessiert generell das Problem, auch zukünftig für
andere Bauteile.
Ist es überhaupt so sinnvoll, das Funkmodul direkt vom µC aus zu
speisen? Die Pins des Controllers dürfen ja auch nicht allzu stark (max.
20mA?) belastet werden. Wäre ein Transistor bzw. FET als "Schalter", der
vom µC angesteuert wird und dann über diesen Weg den Strom zum VCC des
RFM12 leitet, nicht besser?
Hallo Martin,
der RFM12 zieht laut Datenblatt maximal 25mA, der Conrtoller-Pin kann
20mA, richtig. Ich wollte ein Bauteil sparen und entschloss mich daher
direkt über den uC-Pin die Spannung zu schalten.
Aber unabhängig davon befürchte ich, dass es das Problem hier nicht
beheben würde.
Das funktioniert auch über den µC Pin, mache ich auch so.
Ich habe zum Abschalten VCC des RFM12 aber nicht auf GND geschaltet
sondern den Pin (und die anderen IOs) auf High-Z.
Damit hab ich die Gesamtaufnahme in einer Fernbedienung auf <<10µA im
Sleep gesenkt.
Gruß
Fabian
@ Sebastian Wille (Gast)
>Schalte ich nun alle uC-Pins auf Output und LOW, so sollte kein Strom>mehr fließen. Soweit die Theorie.
Vielleicht einen Pin vergessen? Aus Versehen einen internen Pull-Up
eingeschaltet?
MFg
Falk
Hallo,
bei meinen Sensoren mit RFM02, Tiny45 und FOST02 ziehen ca. 4µA
Ruhestrom.
Tiny45 und FOST02 im PowerDown, RFM02 alles aus außer WakeupTimer,
dieser ohne automatische Kalibrierung.
Geweckt wird per PinChange-IRQ mit dem Interrupt des RFM02 ca. alle
Minute zum Senden der Temperatur. und Feuchtedaten.
Ich sehe keinen richtigen Vorteil, die Peripherie komplett abzuschalten.
Gruß aus Berlin
Michael