Forum: Mikrocontroller und Digitale Elektronik ATmega16 - Externer Quarz mit 22pF Kondensatoren


von Marc Brexner (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute!

Ich weiß, dieses Thema wurde schon oft durchgekaut, doch trotz allem bin 
ich mir noch ziemlich unsicher, was (und wie ich es) ich machen muss, um 
meinen ATmega16-16PU mit einem externen Quarz mit 16.000MHz zu 
betreiben.

Meine Frage ist jetzt: Ist ein 16 MHz Quarz überhaupt ok? Der interne 
Oszillator schafft ja nur 8MHz. Mache ich den ATmega mit den 16MHz dann 
kaputt?

Es ist folgendermaßen:
Ich nutze den myUSB MK2 USB Programmer, und nutze ihn natürlich auch um 
meine FuseBits zu brennen.

Aber, was für FuseBits brauche ich? Ich habe einen Screenshot mit den 
möglichen Optionen angehängt.
Ich finde nichts mit externen Quarz bei 16MHz.
Die einzige Option die ich mir denken könnte, wäre die allerletze (ist 
auf dem Screenshot auch markiert.) --> "Ext. Crystal/Resonator High 
Freq.: Start-up Time: 16K CK + 64MS" (xx111111)

Das mit der Start-Up-Time hab ich mir vom Default-Value abgeschaut. Aber 
was bedeutet 'CK'?

Bitte helft mir, ich weiß wirklich nicht weiter.
Und, ist es richtig, wenn ich auf XTAL1 und XTAL2 je einen Kondensator 
(22pF) anhänge, und an die Kondensatoren den Quarz?

Vielen Dank im Vorhinein!
Lg Marc

von Hubert G. (hubertg)


Lesenswert?

16 MHz Quarz ist OK, es wird nichts kaputt.
Die von dir genannten Fusebit sind richtig, CK sind Clock, also Takte.
Quarzanschaltung laut Datenblatt, bei mir Seite 24

von Peter R. (pnu)


Lesenswert?

Bei 16 MHz würde ich zusätzlich die CKOPT-Betriebsart einschalten, da 
schwingt der Oszillator mit maximaler Amplitude.

Die startup-zeit würde ich auf maximal (64 ms + n x CK) einstellen, 
kürzere Startzeit ist n ur in Sonderfällen nötig.

die beiden Kondensatoren und der Quarz bilden eine Pi-Schaltung, die 
beiden Kondensatoren von X1 und X2 gegen Masse, der Quarz zwischen X1 
und X2.

CK sind die Takte bis zum Start des Programms, zusätzlich kommt dann 
noch eine Wartezeit. Wenn 64 ms eingestellt sind, tragen die Takte CK 
bei der Gesamtzeit nichts mehr bei..

von Kurt H. (Firma: KHTronik) (kurtharders)


Lesenswert?

Achtung: wenn Du den Atmel einmal auf externen Trakt programmierst, 
musst Du bei allen folgenden ISP-Programmierungen den externen Takt für 
die Programmierung erzeugen. Ein "Rückstellen" auf internen Takt geht 
nur mit paraleller Programmierung.

von Löwe (Gast)


Lesenswert?

@Kurt Harders

Das verstehe ich nicht.
Wenn der Atmega auf externen Takt programmiert wurde, muss doch sowieso 
ein Taktgeber angeklemmt werden. Ohne Takt läuft der Atmega schlichtweg 
nicht, egal ob nun zu programmieren oder im Normalbetrieb.

Von einem besonderen "Programmier"-Takt habe nich noch nichts gelesen. 
Die Taktfrequenz vom Programmieradapter (=Busfrequenz am SPI) soll unter 
1/4 vom Controller-Takt betragen, meinst du das?

Bis jetzt habe ich nur mal einen Atmega 8 wieder auf internen Takt 
zurückgestellt. Über ISP hat er die Einstellung übernommen, da bin ich 
mir ziemlich sicher.
Genauer überprüft (also den Quarz abgeklemmt) habe ich es nicht, das 
Programm musste ich aber für den neuen Takt neu compilieren, weil die 
Timings nicht mehr passten. Scheint also zu funktionieren?

Weißt du noch wo im Datenblatt das stand? Würde ich gerne mal nachlesen, 
das Kapitel zu den ganzen Takten habe ich bis jetzt immer nur 
überflogen...

von Kurt H. (Firma: KHTronik) (kurtharders)


Lesenswert?

Ich wollte nur darauf hinweisen, dass Du den Prozessor nur noch in der 
Schaltung mit Quarz programmieren kannst. Bei ISP liegt das zwar nahe, 
aber manchmal denkt man einfach nicht mehr dran, wenn man z.B. im STK500 
programmiert.

von Marc Brexner (Gast)


Lesenswert?

Okay, ich betreibe das ganze jetzt folgendermaßen:

Der Kondensator hängt mit einem Pin an XTAL1 und mit dem anderen Pin an 
GND.
Der andere Kondensator hängt mit einem Pin an XTAL2 und mit dem anderen 
Pin an GND.
Der Quarz hängt mit dem einen Pin an XTAL1 und mit dem anderen an XTAL2.
Der ATmega läuft auf "Ext. Crystal/Resonator High Freq.: Start-up Time: 
16K CK + 64MS".

Das ist doch richtig so, oder? (Bin mir zwar sehr sicher, frage aber 
nochmal)

Danke für die ganzen Hinweise etc.!
Jetzt muss ich die Timings meines LED-Cubes nur noch in den Griff 
bekommen :)

Danke nochmal!
Lg (und guten Rutsch schonmal) Marc

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.