AtMegaL mit 14,7456MHz Quarz und XDIV

Persönliche Seite #1198145
Lesenswert?

Hallo,

ich habe für mein aktuelles Projekt einen ATMega128(L) eingeplant, der 
mit 3,3V laufen soll. Für diese Versorgungsspannung ist der Betrieb ja 
nur bis 8MHz spezifiziert. Jetzt habe ich allerdings nur einen Quarz mit 
14,7456MHz (bekomme auch keinen im MJ Package mit 7,3728MHz (wenn doch, 
wo?)).

Im Datenblatt der ATMega128(L)s habe ich nun das "XTAL Divide Control 
Register" (XDIV) gefunden. Ist es möglich, dieses möglichst früh nach 
dem Reset auf 2 zu stellen, so dass der Takt auf 7,3728MHz geteilt wird?

Ich habe öfter gelesen, dass die Megas auch übertaktek laufen, aber 
sporadisch Fehler zeigen. Was haltet ihr also von meiner "Idee"?

Viele Grüße, Lasse

PS: Die Taktfrequenz muss 7,3728MHz oder 14,7456MHz betragen, damit ich 
mit der Kamera von Ulrichradig über das UART mit einer Baudrate von 
921600 kommunizieren kann.
Gast #1198157
Lesenswert?

wenn du in Serie gehst ist dies eine schlechte Idee, sonst (im Fall 
einer einzel Muster erstellung) lass das ding mit vollem Takt (14,x) 
brummen und schau das du einiger maßen im ausgetesteten Temperatur 
Bereich bleibst.
Persönliche Seite #1198969
Lesenswert?

Hallo,

gibt es noch mehr Meinungen zu meiner Idee? ;)

Das ganze soll nicht in Serie gehen, aber schon lange funktionieren.

Den internen Oszillator nehmen und trimmen kommt mir auch nicht so gut 
vor (weil nicht dafür spezifiziert soweit ab von 8MHz zu laufen)...

An der Webcamgeschwindigkeit was verändern, ändert nichts an der 
Tatsache dass mir ein langsamerer Quarz dann fehlen würde ;)

Trotzdem vielen Dank für die bisherigen Antworten :)

Gruß, Lasse
Gast #1198989
Lesenswert?

Ich habe jetzt nicht beim ATmega128 nachgeschaut, aber laufen die ATmega 
nicht alle mit Vorteiler 8 an? Da braucht man doch nur auf 2 
runterschalten.

clock_prescale_set(clock_div_2);

Die maximale Frequenz des Oszillators ist nicht von der Betriebsspannung 
abhängig; nur die Systemfrequenz des Controllers.
Gast #1198990
Lesenswert?

Mittels eine 32 kHz Uhrenquarzes den internen Oszillator trimmen ist 
nicht ungewöhnlich. Das wird unter anderem selber von Atmel auf dem 
Butterfly-Evalboard gemacht. Und es gibt auch entsprechende allgemeine 
App.-Notes von Atmel dazu 
http://atmel.com/dyn/resources/prod_documents/doc8002.pdf. Von 8,0000 
MHz auf 7,3728 MHz runter ist grade so unter der Grenze dessen was man 
tun sollte (10%), und geht. Zitat:

> For all tunable oscillators it is important to notice that it is not
> recommended to tune the oscillator more than 10% off the base frequency
> specified in the datasheet.
Persönliche Seite #1200287
Lesenswert?

Hi,

@Henry: laut Datenblatt ist die interne Division der Taktrate 
normalerweise ausgeschaltet. Schade, das wäre ja perfekt gewesen :)

@Norgan: Interessant! Zumal bei meinem Layout die beiden TOSC-Pins auch 
noch frei sind.

@Eddy: Leider kommt eine zusätzliche Schaltung dank bereits bestellten 
Platinen nicht mehr in Frage. Ansonsten hätte ich einfach ein anderes 
Quarzgehäuse genommen und hätte wohl weniger Probleme ;)

Vielen Dank für die guten Antworten und Gruß, Lasse
Gast #1200307
Lesenswert?

Kannst du vielleicht den ATmega 1284P einsetzen?
Der hat die CKDIV8 Fuse zum Systemstart mit 1/8 Frequenz.
Ist die Fuse gesetzt wird das Teilerregister mit div8 initialisiert. Das 
kann man später um Programm umstellen.

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