Atmega8 mit 8 oder 16 mhz

Gast #467521
Lesenswert?

hallo zusammen,

ich habe das avr tutorial gelesen, und um das ganze mal nachzubauen auch 
die notwendigen komponenten bestellt. leider habe ich nicht dem atmega8 
mit 16 mhz gekauft sondern den mit 8 mhz. gibt es nun im weiteren 
verlauf der anleitung etwas zu beachten? (z.B. einen anderen quarz, 
statt den mit 4 mhz?) oder kann ich diesen ebenfalls verwenden.
falls nicht würde ich, bevor ich den controller einlöte, einen neuen 
bestellen um nicht direkt an dieser hürde zu scheitern.

dank euch

thomas
Gast #467522
Lesenswert?

benütze einfach die voreingestellten 1MHz. Intern kannste den noch auf 
8MHz hochsetzen. Aber ich denke am Anfang benötigst du das noch nicht.

Extern müsste alles zwischen 0-16MHz funktionieren....
Gast #467526
Lesenswert?

... danke für die schnelle antwort.

heisst das ich benötige gar keinen quarz? ich wollte den controller so 
einrichten wie unter "Mikrocontroller" beschrieben:

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment

... würde das ganze denn laufen wenn ich einen 4 mhz quarz anschließe? 
oder einfach nichts an pin9 anschließen?

dank euch, und verzeiht die nub fragen

thomas
#467527
Lesenswert?

Der Mega8 wird vom Werk aus mit 1 MHz internen Takt ausgeliefert... Man 
kann diesen über eine Fuse auf 8 MHz intern erhöhen ohne eine externe 
Beschaltung für den Takt zu haben.

Wenn Du allerdings Beispielprogramme übernimmst solltest Du natürlich 
dann bedenken, dass dein Programm entweder mit einem viertel oder der 
doppelten Geschwindigkeit von 4 MHz läuft (z.B. bei Blinkgeschwindigkeit 
oder RS232).
Gast #467528
Lesenswert?

"heisst das ich benötige gar keinen quarz?"
Ja

"... würde das ganze denn laufen wenn ich einen 4 mhz quarz anschließe?
oder einfach nichts an pin9 anschließen?"
2x ja

im AVR Tutorial ist auch ein Link auf das Datenblatt, da steht viel drin 
...
Gast #467531
Lesenswert?

....das hat nun fast alle meine fragen mehr als perfekt gelöst, offen 
bleibt nur noch:

... die mhz-angabe nur das mögliche potential, d.h. wenn ich nichts 
anschließe läuft er auf 1 mhz... und teoretisch könnte ich den 
controller bis 8 mhz "belasten".

.... ist dann der mit 16 mhz doppelt so schnell, oder benötigt dieser 
mehr takte zur verarbeitung einer instruktion?

thomas

ps: war noch nie in einem forum in dem ich um diese uhrzeit noch so 
schnell eine antwort bekommen habe. Vielen Dank!
#467532
Lesenswert?

Mit dem internen Takt gehen beide nur bis 8 MHz... die 16er Variante 
kann nur mit einem externe Taktgeber (Quarz oder Oszillator) die volle 
Geschwindigkeit erreichen.

Was die Verarbeitungszeit angeht gibt es zwischen den Typen keinen 
Unterschied.

Du hast nur die Wahl zwischen 1 MHz und 8 MHz intern (beim Mega8).
Gast #467533
Lesenswert?

Öhm...also, vielleicht weisst Du es ja schon - sofern dem so ist, 
überlese den kommentar.

Wenn Du die entsprechenden PINs nicht an ein Quarz anschließt so heißt 
das nicht, dass der Controller mit Intern 1MHz läuft!!!
Wenn Du den Controller zuvor auf Externen Quarz "gefused" hast, dann 
musst Du extern ein Quarz anschließen.
Wenn Du den Controller zuvor auf Intern "gefused" hast, dann kannst Du 
extern alles anschließen (fast alles, 230V solltest Du nicht anlegen).

Bitte schaue mal ins Datenblatt, Thema Oszillator, Fuses, System 
Clock...
#467681
Lesenswert?

Um noch einmal zusammen zu fassen.
Es gibt 2 Möglichkeiten:
  * interner Takt
  * externer Takt

* interner Takt
  Dies ist der Auslieferungszustand bei einem Mega8.
  Dabei wird der Takt von einem internen Schwingkreis
  geliefert.
  Vorteil: keine externe Beschaltung notwendig. Die Pins
    an denen ansonsten ein Quarz oder ein Quarzoszillator
    angeschlossen wird sind daher als normale Portpins
    verwendbar.
  Nachteil: Der Schwingkreis ist nicht sehr genau. Bei
    Temperaturänderungen verändert er seine Frequenz.
    Nur 2 Frequenzen (1Mhz und 8Mhz) sind realisierbar. Es
    gibt zwar die Möglichkeit die interne Frequenz in Grenzen
    noch zu verändern, dies ist aber aufwändig und erfordert
    mindestens einen Frequenzzähler, wenn man eine bestimmte
    Frequenz erreichen will.

* externer Takt
  Auch hier gibt es wieder 2 Möglichkeiten
  o Quarz
  o Quarzoszillator
  Vorteil: Die Taktfrequenz ist so stabil, wie es der Quarz
    bzw. der Oszillator vorgibt. Und das ist wesentlich genauer
    als der interne Oszillator.
    Kein Abgleich notwendig, wenn eine bestimmte Frequenz
    erreicht werden soll, solange as einen Quarz bzw. Oszillator
    in dieser Frequenz gibt.
  Nachteil: Die Pins an denen der Quarz bzw. der Oszillator
    angeschlossen wird, sind nicht mehr als I/O Pins nutzbar.
Gast #467697
Lesenswert?

@ Jörg B.:
>Auslieferungszustand ist mit internem 1 MHz Takt.

Der mega8 hat keine ckdiv-Fuse, den kann man nicht /8 Teilen. Nur 
zwischen 1, 2, 4 und 8 MHz interner RC-Oszillator auswählen.
Den mega8L (8 MHz) sollte man nicht übertakten. Der interne Aufbau ist 
für kleinere Versorgungsspannungen ausgelegt und kann >8MHz seltsame 
Phänomene zeigen. Drum Steht auf jedem AVR die maximal als sicher 
garantierte Taktfrequenz drauf.

>Sollte er auf extern umgefused worden sein kann man dies natürlich rückgängig 
machen wenn man will...

Ja, sofern ein Quarz angeschlossen ist oder an XTAL1 eine Frequenz min. 
4x der ISP-Frequenz anliegt.
#467712
Lesenswert?

Stimmt, mit dem 2 und 4 MHz war mir gar nicht mehr bewusst, da ich immer 
direkt auf 8 hochgestellt hatte... Aber stimmt natürlich - mia culpa :)

Das mit dem ckdiv-Fuse versteh ich jetzt nicht so ganz, aber
"The device is shipped with CKSEL = “0001” and SUT = “10” (1 MHz 
Internal RC Oscillator, slowly rising power)."
steht zumindest so in der Doku.
#467718
Lesenswert?

psycho_gon schrieb:
" ...  bevor ich den controller einlöte, ... "
Mein Rat: Keinesfalls einlöten, lieber sockeln. Wenn man sich das Ding 
zerfused oder aus einem anderen Grund stirbt, wird das sonst eine eklige 
Auslötaktion. ( Es sei denn, es ist ein Controller im TQFP-Gehäuse, da 
ist natürlich nichts mit Sockel).

Gruss
Jadeclaw.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren