Energiesparende Software entwickeln

Stromzähler für Mikrocontroller

12. Mai 2010, 11:06 Uhr | Dr. Kurt Böhringer
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Optimieren mit Software

Spannungs- und Taktreduzierung sowie Low-Power-Modi werden üblicherweise allein durch Software gesteuert. So sind die Zusammenhänge zwischen Versorgungsspannung eines Mikrocontrollers und der benötigten Frequenz einfach aus dem Datenblatt zu entnehmen. Für höhere Frequenzen werden höhere Spannungen benötigt. Wird die Frequenz durch Umprogrammieren der PLL reduziert, kann auch die Spannung reduziert werden. Beides hat großen Einfluss auf den Energieverbrauch. Schwieriger wird der Zusammenhang des Verbrauchs bei der Nutzung der Low-Power-Modi. Die ganz tiefen Modi verbrauchen wesentlich weniger Strom, hier kommt man inzwischen deutlich unter 1 µA. Dies ist insbesondere bei langen Schlafzuständen wichtig. Allerdings benötigen diese Modi mehr Aktivität, um den Mikrocontroller und die Software zu reaktivieren. Teilweise wacht hier der Mikrocontroller aus dem Reset auf, da die Register und die flüchtigen Speicher ihre Werte verloren haben. Hier könnte ein weniger tiefer Schlafzustand – bei dem diese Werte erhalten bleiben und der dadurch natürlich wesentlich mehr Strom verbraucht – sinnvoller sein, da ein annähernd sofortiges Weiterarbeiten möglich ist.

Auch das Bearbeiten eines Interrupts aus dem Schlafzustand bedarf genauerer Untersuchungen. Ist es besser, hier mit voller Frequenz zu arbeiten, da dann die Ausführungszeit kürzer wird, oder ist es besser, mit kleinerer Frequenz zu arbeiten, obwohl dann die Zeit länger wird, aber der Strom sinkt? Hier können nur genaue Messungen des Verbrauchs und die Errechnung des Integrals Aufschluss geben.

Mit externen Peripherie-Einheiten gibt es noch weitere Optimierungsmöglichkeiten. Externe Speicher können bei Bedarf abgeschaltet werden, die Busfrequenz des Speichers kann je nach Performance-Bedarf reduziert oder erhöht werden. Auch dies wird über die Software gesteuert, und die Verbrauchsverbesserungen sind ohne tatsächliche Messung schwer zu erhalten.
Auch die interne Peripherie der Mikrocontroller kann beträchtlich zum Verbrauch beitragen. Alle Peripherie-Einheiten sind auch an Taktsignale angeschlossen, deren Frequenzen verändert werden können. Bei fast allen Mikrocontrollern können die Peripherals einzeln ein- oder ausgeschaltet werden. Wie später im Artikel gezeigt, kann ein einfacher Analog/Digital-Wandler bei der Konvertierung bereits den Stromverbrauch ansteigen lassen, auch hier muss wieder ein Kompromiss zwischen Schnelligkeit – manchmal auch Genauigkeit – und Stromverbrauch erzielt werden.

passend zum Thema


  1. Stromzähler für Mikrocontroller
  2. Optimieren mit Software
  3. Den tatsächlichen Stromverbrauch messen
  4. Messwerte und Software-Ereignisse zuordnen
  5. Sparmaßnahmen umsetzen

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Hitex GmbH