www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmega Geschwindigkeit zur Laufzeit verändern


Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist es möglich den AVR während dem Betrieb anders zu takten?

Indem der Avr einen Transistor schaltet der einen anderen Oszillator 
dranhängt? Oder vielleicht sogar mit einem Quarz (Da müsste ein Bein ja 
schon reichen)? Geht so was? Es geht darum: Wenn das Gerät mitgenommen 
wird, soll es wenig Strom verbrauchen (niedriger Takt), wenn es am 
USB-Port steckt muss der Avr aber schnell sein um die USB Schnittstelle 
zu realisisieren.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samuel K. schrieb:
> Ist es möglich den AVR während dem Betrieb anders zu takten?

es gibt einige Typen da kann man intern den Vorteiler festlegen. Aber im 
Sleep modus verbraucht so ein Atmel ja nicht wirklich viel strom, ist 
das etwas noch zu viel?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samuel K. schrieb:
> Ist es möglich den AVR während dem Betrieb anders zu takten?
>
> Indem der Avr einen Transistor schaltet der einen anderen Oszillator
> dranhängt? Oder vielleicht sogar mit einem Quarz (Da müsste ein Bein ja
> schon reichen)? Geht so was? Es geht darum: Wenn das Gerät mitgenommen
> wird, soll es wenig Strom verbrauchen (niedriger Takt), wenn es am
> USB-Port steckt muss der Avr aber schnell sein um die USB Schnittstelle
> zu realisisieren.

Wenn das Programm so realisiert ist, dass es bei Batteriebetrieb den µC 
in Wartephasen 'schlafen legt', dann verbraucht der µC so wenig Strom, 
dass die Selbstentladung der Batterie/Akkus höher liegen dürfte. Und bei 
Bedarf hat man dann trotzdem wieder die volle Rechenleistung zur 
Verfügung.

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann braucht der schnelle µC doch Impulsartig Strom. Entlädt das den 
Akku nicht schneller, als ein langsamer µC?

achso, die Selbstentladung ist größer als der impulsartige strom?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samuel K. schrieb:
> Dann braucht der schnelle µC doch Impulsartig Strom. Entlädt das den
> Akku nicht schneller, als ein langsamer µC?

weist du überhaupt über welche ströme es bei so einem µC geht? Jeder 
Takt belasten den Akku impulsmäßig. Es es wurde schon vor langer Zeit 
ein bautteil namens Kondensator erfunden.

Autor: Stefan O. (avrstefan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
> Wenn das Programm so realisiert ist, dass es bei Batteriebetrieb den µC
> in Wartephasen 'schlafen legt', dann verbraucht der µC so wenig Strom,
> dass die Selbstentladung der Batterie/Akkus höher liegen dürfte. Und bei
> Bedarf hat man dann trotzdem wieder die volle Rechenleistung zur
> Verfügung.

Das stimmt und ist eine sehr schöne Möglichkeit das zu realisieren. 
Hatte mein derzeitiges portables Projekt auch mit einem Atmega begonnen, 
verbrauchte damals glaub ich wesentlich!!! weniger als 1 mA.
Bin aber dann aus anderen Gründen (Rechengeschwindigkeit) auf einen 
AVR32 umgestiegen, dieser ist dynamisch taktbar. -> Jedoch wenn beide im 
sleep sind hat keiner einen echten vorteil [Also umsteigen nicht nötig!]

Verbessert mich wenn ich falsch liege aber die XMega können doch auch 
dynamisch getaktet werden.

Aber selbst wenn du den Takt verstellen kannst ist das grundlegende 
Vorgehen immer das Gleiche. Nicht verwendete Perepherie abschalten (Wenn 
diese auf eine ersichtlich längere Zeit nicht benötigt wird! Oder 
garnicht verwendet!), und den Prozessor in einen Sleep modus schicken.

1: Sleep
2: Wakeup
3: Irgendwas erledigen
4: wieder Schritt 1

Autor: fingus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da solltest Du Dich mal bei bei den PICs umsehen. Da gibt es sehr viele 
Typen, bei denen man den internen Oszillator in weiten Grenzen verändern 
kann (teils von 31 kHz bis 32 MHz). Such mal bei 
http://www.microchip.com/productselector/MCUProduc... oder 
http://www.microchip.com/en_US/family/8bit/ (links sind die product 
tables und dann links oben der parametric search) oder Du suchst nach 
dem Suchbegriff "nanowatt"

Autor: fingus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ergänzung: da geht teilweise schon bei ganz einfachen Produkten wie dem 
8-Beiner 12F683

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich meine mich zu entsinnen, neulich in einem Datenblatt eines
AVR (tiny13?) gelesen zu haben, daß sich der Takt von einem
clock zum nächsten nur um ein paar Prozent ändern darf.
Ein schlagartigers Umschalten auf einen anderen Takt wäre
damit nicht machbar.

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS: Bei attiny13 unter "System Clock and Clock Options":
When applying an external clock, it is required to avoid sudden changes in the applied clock fre-
quency to ensure stable operation of the MCU. A variation in frequency of more than 2% from
one clock cycle to the next can lead to unpredictable behavior. It is required to ensure that the
MCU is kept in Reset during such changes in the clock frequency.

Autor: Sam .. (sam1994)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke euch allen. Die Sleeps werde ich aufjedenfall nutzen. Ich muss mal 
schauen, ob ich die USB Lib mit dem Rest in einen Controller packe. 
Sonst nimm ich einfach einen 2. Attiny.

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

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du einen Uhrenquarz an die TOSC-Pins eines dafür ausgelegten AVRs 
legst, kannst Du den internen R/C-Oszillator damit kalibrieren. Somit 
hast Du einen 4Mhz...14Mhz Generator, der jederzeit umstellbar ist. Dazu 
kannst Du noch den internen Prescaler zur Laufzeit verändern. Das 
Clock-System des XMega ist dagegen natürlich purer Luxus, aber auch 
nicht schlecht ;-).

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.