mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega48 - hohe Stromaufnahme im Idle Mode?


Autor: Lars Lochmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein wenig mit den Schlafmodi des ATMEGA48 experimentiert und 
habe im Idle Mode eine unerwartet hohe Stromaufnahme festgestellt. Hat 
jemand schon ähnliche Erfahrungen gemacht bzw. eine Idee, was die 
Ursache sein könnte?


int main(void)
{
  set_sleep_mode(SLEEP_MODE_IDLE);
  sleep_mode();

 while (1)
  {
  }
}


Interner Clock 8MHz Division durch 8 => 1MHz
Spannung: 3,3V

Schaltung ohne Controller 0,3mA
Active Mode: 2,01mA-0,3mA= 1,71mA
Idle Mode: 1,69mA-0,3mA = 1,39mA
Power Down: 0,34mA-0,3mA= 0,04mA

Autor: anonymous (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
JTAG schon deaktiviert (pullups!)?
Sonstige Hardware?
Verwendest du einen Spannungsregler?
Welche Taktquelle, intern oder extern?

Autor: Lars Lochmann (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
JTAG gibt es bei dieser Controlervariante nicht. Ich habe mal die 
Fuses-Einstellungen angehangen.
Ausgänge des Controllers werden nicht initialisiert. Also alle Pins 
sollten hochohmig sein.
Einen Spannungsregler verwende ich nicht. Die Stromaufnahme der 
Schaltung ohne Controller habe ich auch gemessen und in der Rechnung mit 
jeweils 0,3mA gegen gerechnet.
Ich finde halt, dass im Idle Mode die Stromaufnahme zu hoch ist, wenn 
man mit dem Datenblatt vergleicht.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Also alle Pins sollten hochohmig sein.

Floatende Pins können den Stromverbrauch erhöhen.
Also entweder Pullup einschalten oder als Ausgang definieren.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grob gerechnet verbraucht der Idle-Mode bei gleicher Einstellung der 
Periphie ziemlich genau die Hälfte des Active-Modes. Module mit hoher 
Stromaufnahme sind ADC, Analog-Komparator, Brownout-Detektor und die 
Referenzspannungsquelle selbst. Was man nicht braucht, sollte per PRR 
abgeschaltet werden. Ansonsten gilt das zuvor Gesagte: alle Aus- und 
Eingänge auf definierten Pegel setzen und keine externen Bauelemente 
während des Sleep treiben.

Autor: Lars Lochmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe jetzt alle Pullups aktiviert. Danke, es hat was gebracht. :)
Ich habe jetzt:
Schaltung ohne Controller 0,3mA
Active Mode: 1,24mA-0,3mA = 0,94mA
Idle Mode: 0,85mA-0,3mA = 0,55mA
Power Down: 0,45mA-0,3mA = 0,01mA

Das ist schon akzeptabel. :) Ich überlege jetzt nur noch, warum die 
floatenden Pins die Stromaufnahme erhöhen. Verursachen da eventuell 
Störungen von außen ein internes Schalten der Pin-Register, was zum 
Stromverbrauch führt bzw. wird im undefinierten Zustand ein Querstrom an 
Eingangstransitoren verursacht?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Querstrom. Und u.U eingestreute, hohe Schaltfrequenzen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe Sleep Mode

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.