Forum: Mikrocontroller und Digitale Elektronik I/O Pegel während Sleep Mode


von Oliver (Gast)


Lesenswert?

Hallo zusammen,
Ich arbeite an einem größeren batterriebetriebenem Projekt, in dem mein
ATMega16 fast immer nur im Power-Save Mode ist. Kurz vor Eintritt in
diesem Modus muss er jedoch Zahlreiche Peripherie abschalten
(232-Treiber, ADU, LCD-Stromversorgung usw.). Um beispielsweise meine
LCD-Stromversorgung abzuschalten, muss ich ihr einen Low-Pegel
spendieren. Meine Frage ist daher:
Wie bekomme ich im Power-Save Mode einen Low-Pegel aus einem Portpin,
ohne Strom zu verbrauchen? Meine Idee war, einen Pulldown-Widerstand
einzusetzen und vor Eintritt in Power-Down den Portpin auf Eingang zu
stellen, um Strom zu sparen.
Macht diese Idee Sinn? Gibt es vielleicht noch andere Möglichkeiten, um
 zum Beispiel auch den Pulldown-Widerstand einzusparen?
Im Vorraus besten Dank,
Oliver

von Chris (Gast)


Lesenswert?

Wenn der Pin als Ausgang aktiv auf Low zieht und etwa einen
NPN-Transistor damit blockiert, fließt doch praktisch kein Strom in den
Pin, auch im Powersave-Modus?

Irgendwie muss die Peripherie ja auf Low gezogen werden. Ein Pulldown
+Eingang verursacht entweder denselben Strom wie ein auf Low gezogener
Ausgang oder einen geringeren, wobei dann logischerweise nicht mehr 0V
gehalten werden (was sehr ungünstig sein kann, weil die
Eingangsbeschaltung des Controllers bei Spannungen um vcc/2 übermäßig
viel Strom zieht).

Was genau möchtest du denn erreichen?


Falls ich total daneben liegen sollte, bitte verbessern. :-)

von Oliver (Gast)


Lesenswert?

Ich finde im Datenblatt keine Informationen, was mit "normalen" I/O
Pins im Power-Save Mode passiert. Mein ATMega darf im Powerdown Mode
nicht mehr als 10µA verbrauchen. Daher ist es mir wichtig, dass ich die
I/O Ports vorm Power-Save Mode so einstelle, dass die CPU möglichst
wenig Strom verbraucht. Leider habe ich noch weitere Bausteine, die
solche Eingänge haben, wie /Shutdown oder Enable. Diese brauchen
während des Power-Save Modus also einen Low Pegel. Ich weiß nicht, wie
ich diesen bereitstellen soll. Kann man überhaupt während des
Power-Save Modus Ausgänge betreiben? Wenn ja, verbrauche ich dann nicht
wieder viel zu viel Strom, weil die I/O Logik währenddessen arbeiten
muss?
Oliver

von AxelR. (Gast)


Lesenswert?

Lege die Pegel als Ausgang auf LOW...
Deine Peripherie, welche LOW braucht, um Disabled zu werden, wird genau
so viel strom in den PortPin hineinfliessen lassen, wie im Datenblatt
des (z.B.) MAX-Bausteins angegeben ist (in diesem Fall sind es maximal
1uA).Zum Stromverbrauch kommt dann halt noch der Standby Strom hinzu,
den der (in diesem Beispiel) MAX dann noch braucht( max.10uA). Die
fliessen aber sowieso nicht in den Portpin. Ob die genannten 1uA nun in
den Portpin vom AVR hineinfliessen, oder an einem Pulldown verbraten
werden, ist nun eigentlich erstmal egal wie ich finde, da die gesamte
Schaltung ja von einer Batterie versorgt wird. Die IO Logik ist zwar
statisch aktiv, wird aber nicht getaktet (daher gehen auch nur
LevelInts, um den wieder aufzuwecken).
AxelR.

von Oliver (Gast)


Lesenswert?

So mache ich es. Scheint auch schon zu klappen. Ich dachte bislang, dass
die Portpins während Power-Down durch die Sleep-Logik hochohmig
geschaltet werden. Ist aber wohl nicht so.
Besten Dank für die Antworten!
Oliver

von Stefan Kleinwort (Gast)


Lesenswert?

@Oliver:
Ich glaube, Du sitzt einem Missverständnis auf. Ein als Ausgang
geschalteter Pin muss keinen Strom verbrauchen (solange aussen keine
Schaltung Strom aus dem Pin zieht).

Im Gegenteil, unbenutzte oder nicht terminierte Pins sollte man besser
beim PWDN als Ausgang schalten, damit sie nicht floaten (und dann mehr
Strom brauchen).

Logikpins sind im Allgemeinen unkritisch beim Design. Aufpassen musst
Du vor Allem bei den analogen Schaltungsteilen - z.B. ein
Spannungsteiler, um einen AD-Messwert anzupassen, kann Deine ganze
PWDN-Schaltung zunichte machen.

Stefan

von Oliver (Gast)


Lesenswert?

So war es auch (das mit dem Missverständnis). Hatte mal vor langer Zeit
gelesen und geglaubt, man müsse um Strom zu sparen vor PDWN die
nichtbenutzten I/O Ports auf Eingang setzen. Ist jetzt aber klar,
Danke, Oliver

von Kurt (Gast)


Lesenswert?

Hallo Leute,

hier möchte ich mich anhängen (Mega48).
Taster abfragen (interne Pull.. aktiv):
a' Schalten die internen R gegen + oder Masse?
b' Was passiert im PWDM mit den Eingängen (Stromverbrauch)?
   Taster natürlich offen.

Gruss Kurt

von AxelR. (Gast)


Lesenswert?

die R' schalten gegen PLUS. es sollte kein signifikanter Strom fliessen
(CMOS). Taster an Maße(hihi)? Quatsch, egal. sind ja offen.

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.