Forum: Mikrocontroller und Digitale Elektronik AVR übertakten?


von Thomas Kaulen (Gast)


Lesenswert?

Hat jemand von Euch schonmal Erfahrung Gesammelt ,was das übertakten
eines ATMega16 über 16 Mhz hinaus angeht ? Ich bräuchte für eine
Anwendung ca. 24 Mhz und ich weis nicht, ob man mittels eines 24 Mhz
Quarzes die Leistung so erhöhen kann.

gruß
Thomas

von sammy (Gast)


Lesenswert?

Mit uebertakten von Mikrocontrollern kenne ich mich nicht aus, nur etwas
mit PCs...
von 16 auf 24Mhz ist schon ein gewaltiger Sprung, die Frequenz wuerde
um 50% steigen...
ich schaetze mal das das nicht so ohne weiteres geht, in jedem Fall
wirst du denke ich eine ordentliche Kuehlung brauchen.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Die Temperaturentwicklung wird weniger das Problem sein, das Problem ist
dass die Speicher diese Frequenz nicht mehr so ohne weiteres mitmachen
werden.

von Tobias A. (Gast)


Lesenswert?

Hi

schau mal nach, Atmel hat auf der Webseite
den ATMEGA 168 der kann von sich auch bis
24MHz.
Wenns nicht gleich 16kb Speicher sein sollen,
tut es auch der ATMEGA48 (4kb) oder der ATMEGA88
(8 kb) die können alle 24 MHz.

Gruß
  Tobi

von leo9 (Gast)


Lesenswert?

Hallo Tobi,

hast du schon einen der Mega48 oder 88 in Händen gehabt. Atmel hat sie
zwar schon im Herbst vorigen Jahres angekündigt. Bis jetzt sind ja noch
nicht mal die vorher angelündigten neuen tiny erhältlich.

grüsse leo9

von Ratber (Gast)


Lesenswert?

Yep,so isses.

Die Erwärmung ist nen Witz gegenüber nem PC.

Da könnte man locker auf 400% gehen bevor man sich irgendwie ernste
Sorgen machen muß aber der Kern und der Speicher kommen eben nicht mehr
mit.

den M16 hab ich stabil bis 21 Mhz getestet aber sämtliche Zeitabläufe
müssen natürlich umgerechnet werden.

alles vom Timer bis zur Seriellen läuft dann schneller als "normal".

Wenn de in langsamen Schritten (1 Mhz)experimentierst dann passiert dem
Controller nix ausser das eben irgendwann die Ausführung fehlerhaft
wird.

Die Seriensteuung ist mitunter recht hoch.

Der eine steigt schon bei 18 Mhz aus,der andere eben bei 21 Mhz.

Ich schätze mal das es auch einige gibt die die 24 Mhz packen aber
wenne noch Zeit hast dann warte auf die neuen Modelle.
Die sind soweit ich das letztens richtig gelesen hab für 24 Mhz
ausgelegt.

von Ratber (Gast)


Lesenswert?

Yo,da schreibt man mal öänger und alles für die Katz  ggg

von Tobias A. (Gast)


Lesenswert?

@ leo

leider nein, aber ich versuche grad
welche zu bekommen.
In den Verfügbarkeitslisten steht er
mit "limited Samples". Mal schaun ob
man einen bekommen kann.

von Stefan Kleinwort (Gast)


Lesenswert?

vom mega 48 habe ich gehört, dass es schon Samples geben soll. Hat halt
nur 4k Flash ... Der Reset lässt leider auf sich warten, auch Samples
gibt es wohl noch keine.

Stefan

von Chris (Gast)


Lesenswert?

Hallo,

möchte nur mal einen Erfahrungswert beisteuern:

Als ich kürzlich mein Programm von Betrieb mit 4 MHz auf 10 MHz
umstellte, wollte ich beim Umlöten des Quarzes spaßeshalber etwas mit
den Quarzfrequenzen experimentieren. 10 MHz ist die höchste für den
AT90S2313 zugelassene Taktfrequenz. Betriebsspannung ist 5,0V. Mit
14,xxx MHz ging es noch einwandfrei, selbst mit 20 MHz gab das Programm
noch korrekte Ausgaben auf das LCD. EEprom wird nicht verwendet, nur
etwas RAM und der Timer1. Die Verarbeitungsgeschwindigkeit war
definitiv doppelt so hoch wie bei 10 MHz. Daß ein Exemplar bis 20 MHz
mitmacht, hätte ich eigentlich nicht erwartet.

Gruß

von Malte Marwedel (Gast)


Lesenswert?

Ich hab ähnliche Erfahrungen wie Chris gemacht:
Ich habe einen AT90S4433, der bis 8MHZ laufen soll, auch problemlos
noch bei 18MHZ betreiben können, also mehr als die doppelte
Maximalfrequenz.
Das Programm las einen A/D Port ein und steuerte je nach A/D Wert eine
LED mittels PWM (Software - also ohne Timer).

von Henning (Gast)


Lesenswert?

hab hier mal gelesen, das die avr´s in der entwicklung früher auf 20mhz
gezielt haben, das aber wegen dem eeprom nicht mehr durchgehalen wurde.

von Profi (Gast)


Lesenswert?

Kommt natürlich immer auf die Randbedingungen an.
Wenn ein Hersteller eine max. Frequenz angibt, heißt das:
- im gesamten Temp-Bereich
- im gesamten Vcc-Bereich
- alle hergestellten Chargen

Dass unter optimalen Bedingungen bei dem einen oder anderen Chip mehr
din ist, versteht sich, aber wieviel?
Zum Testen kann man das schonmal machen, aber für ein Projekt würde ich
das nicht soweit ausreizen.

von Peter D. (peda)


Lesenswert?

In den seltensten Fällen bringt ein höherer Takt wirklich was.

Oftmals kann man durch Umstellen des Programmablaufs viel mehr an
Geschwindigkeit rausholen.

Sinnvoll wäre es daher, wenn Du schildern würdest, wo es klemmt.
Würde mich wundern, wenn es dafür nicht ne 16 oder sogar 8MHz Lösung
gibt.


Peter

von sammy (Gast)


Lesenswert?

ich haette zum übertakten auch eine Frage, ich möchte den Atmega162L
(max 8Mhz) für einen Mp3 Player einsetzen.
Ich habe in einem Forum gelesen, das man ihn beim abspielen mit 6Mhz
betreiben sollte, wenn ein GLCD angeschlossen ist, waere es moeglich
fuer den Download von MP3s den Takt auf 12 Mhz zu erhoehen, also ein
12Mhz Quarz nehmen und bei normalem Betrieb mit dem Faktor 1/2 zu
betreiben, oder haelt sich die Veraenderung des Stromverbrauchs je nach
Taktfrequenz in kleinen Grenzen?

von Benedikt (Gast)


Lesenswert?

Bei mir macht ein AT90S2313 bei 22,1184MHz garnichtsmehr, außer einem
Programmabsturz...
Muss ich halt doch auf den ATtiny2313 warten...

von Benedikt (Gast)


Lesenswert?

Hab mal alle AT90S2313 ausprobiert die ich da hatte:
Bis 20MHz keine Probleme, mit 22MHz starten manche garnicht, andere
laufen für ein paar Sekunden und hängen sich dan auf, und manche laufen
durch, aber mit Fehler.
Das ganze ist ein DDS Sinusgenerator, der einen 1kHz Sinus ausgibt.
Ich lasse den AVR jetzt mit 18MHz laufen.

von Eugen d (Gast)


Lesenswert?

für einen superschnellen dds hätte ich folgende idee ( nur rein von der
überlegung her ) du speicherst die sinustabelle im externen RAM ab ( ab
einer adresse mit der endung 0 ( hexadecimal)) nach dem du die tabelle
geladen hast und den ram für den avr deaktiviert hast  würde ich ein
entsprechend schnellen zähler( 8 bit) mit der gewünschten
samplingfrequenz betreiben dessen ausgang ( der des zählers) du an den
adressbus des ( schnellen) rams hängst( der zähler und ein paar weitere
adressbits ( warscheinlich vom avr gesezt ) sollten dann auf die
adressse der tabelle zeigen)  am datenbuss kannst du dann über ein
zuschaltbares latch die sinus werte dann an einem R2R netzwerk in eine
sinusspannung wandeln aber das kennste ja bestimmt
grüße eugen d

von Chris (Gast)


Lesenswert?

Hallo,

na ist doch schön, wenn man wenigstens für nichtprofessionelle
Verwendung die Option hat, den 2313 bis 20 MHz laufen lassen zu können.
Reicht das nicht?

Gruß

von Benedikt (Gast)


Lesenswert?

@Eugen d
So in etwa lief mein bisherhiger Funktionsgnerator:
In einem EPROM sind die Daten gespeichert und werden von einem
synchronen Adresszähler angesteuert. Man kann zwischen 512 Werten, 128
Werten oder 32 Werten pro Zyklus umschalten. Macht bei 1-2MHz
Taktferquenz immerhin etwa 50kHz. Danach gibt es Timingprobleme mit dem
EPROM-DAC Datentransfer, da kurzzeitug ungültige Daten anliegen und
deshalb ein DAC mit internem Latch eingebaut ist.
Mit einem Cache SRAM müsste es schneller gehen aber da bleibt immer
noch ein Problem: Die Samplefrequenz die mindestens 32 mal so groß ist
wie die Ausgangsfrequenz muss irgendwie erzeugt werden.
Das Problem umgeht DDS: Hier wird ist die Samplefrequenz fest (bei mir
2MHz) und nur die Schrittbreite zwischen den einzelnen Werten  wird
verändert.

Und anstelle der SRAM Schaltung habe ich was besseres:
Man nehme einen RAMDAC aus einer alten Grafikkarte, der hat 3x 6bit DA
Wandler (oder sogar 3x8bit bei einigen) und eine passende Farbtabelle
die aus 256x 3x 6/8bit SRAM besteht. In einen der 3 Farbkanäle schreibe
ich eine Sinustabelle, in die nächste Dreieck und dann noch Sägezahn.
Die RAMDACs gibt es bis über 200MHz, manche sogar mit internem PLL für
den Takt. Dann kommt nur noch ein 8bit Synchronzähler dran und fertig
ist der Funktionsgenerator 0-2MHz...

Aber fürs erste reicht der AVR DDS Generator 0-100kHz mit 0,1Hz
Auflösung. Gesteuert von einem 8051 der die LED Frequenzanzeige
multiplext, die Eingabe abfragt und die Schrittbreite für den DDS
Generator als 48bit Zahl berechnet (wovon 24bit verwendet werden).
Wenn der ATtiny2313 erhältlich ist, wird dieser auf 27MHz übertaktet
und ersetzt dann den AT90S2313

von Henrik (Gast)


Lesenswert?

@ Eugen d:
Das ist das Prinzip der DDS-Ic's, die es für mittelmäßig viel Geld zu
kaufen gibt (wenn man weiß wo). Das geht dann bis teilweise in den 100
MHz Bereich. Schau mal auf die Page von Analog, da müsstest du fündig
werden.

Henrik

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.