mikrocontroller.net

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


Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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. :-)

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: AxelR. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Kurt (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: AxelR. (Gast)
Datum:

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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.