Hallo Leute, ihr seit schuld, dass ich mich jetzt auf die XMEGA einstellen muss. ;-) Gleich die erste Frage: AVR1003 (http://www.atmel.com/dyn/resources/prod_documents/doc8072.pdf) wegen der Takterzeugung habe ich jetzt durch und weiß, was alles geht. Aber was ist davon zu empfehlen? Auf den internen RC-Generator mag ich mich (noch?) nicht verlassen, Kalibrierung hin der her. Also muss wohl ein Quarz her. Sollte man da tendenziell eher eine kleine Quarzfrequenz (z.B. 1 MHz) nehmen und dann ggf einen hohen Multiplikationsfaktor via PLL? Oder eher eine hohe Quarzfrequenz und einen niedrigen Faktor? Gehen wir einmal davon aus, ich will auf jeden Fall die vollen 32MHz. Was ist da stabiler (Quarz eingeschlossen)? Wie sind da eure Erfahrungen? Danke für eure Hilfe. Gruß, DetlevT
Detlev T. schrieb: > Sollte man da tendenziell eher eine kleine Quarzfrequenz (z.B. 1 MHz) > nehmen und dann ggf einen hohen Multiplikationsfaktor via PLL? Oder eher > eine hohe Quarzfrequenz und einen niedrigen Faktor? Gehen wir einmal > davon aus, ich will auf jeden Fall die vollen 32MHz. Der Quarz sollte einen geradzahligen Teiler oder ein geradzahliges Vielfaches von dem haben, was Du später als CPU-Frequenz haben willst. Dabei spielt nur die Grundgenauigkeit des Quarzes eine Rolle, nicht der Faktor der PLL oder des Prescalers. Ein guter 8Mhz Quarz solle ohne weiteres zu bekommen sein und ist daher auch gut anwendbar. Wenn Du spezielle Frequenzen für Audio-Streaming oder Bilderzeugung brauchst, muss der Quarz halt auf diese Frequenz, einen Teiler oder ein Vielfaches davon resonant sein. Übertakten des XMega ist übrigens auf bis etwa 38MHz möglich.
wenn Du das max. Frequenz möchtest, sollst Du auch max. mögliche (16MHz) nehmen.
wt schrieb: > wenn Du das max. Frequenz möchtest, sollst Du auch max. mögliche (16MHz) > nehmen. Unsinn. Das macht nur mehr Probleme beim Platinendesign. Und es steigert den Strombedarf der Oszillatorstufe.
Detlev T. schrieb: > Was ist da stabiler (Quarz eingeschlossen)? Wie sind da eure > Erfahrungen? Detlev T. schrieb: > Aber was ist davon zu empfehlen? Es spricht aus meiner Sicht zunächst nichts gegen einen 32.768 kHz Quarz.
Joe G. schrieb: > Es spricht aus meiner Sicht zunächst nichts gegen einen 32.768 kHz > Quarz. Lies das ErrataSheet.
Knut Ballhause schrieb: > Unsinn. Das macht nur mehr Probleme beim Platinendesign. Und es steigert > den Strombedarf der Oszillatorstufe. So wie es aussieht, brauche ich wohl eine Taktfrequenz von 30MHz (wg. UART). Würdest du mir dann also zu dem Extrem 1MHz-Quarz und Faktor 30 raten?
Zuerst einmal: Solange man keine zeitkritischen Abläufe im Programm hat, kann man ohne weiteres den internen RC-Oszillator verwenden. "genauer" braucht man bei besser als einige Prozent, bei Zeit- und Frequenzmessungen, bei asynchroner Datenübertragung wie RS232. Quarze sind im Bereich zwwischen 4MHz und 16 MHz am leichtesten zu fertigen. In diesem Frequenzbereich sind die Preise am niedrigsten, die Daten am besten einzuhalten, die Zahl der Bauformen am größten. Für die Frequenz sind zwei Varianten vorzuziehen: entweder eine feste ganzzahlige Frequenz wie z.B. 4, 8 oder 12 MHz oder eine Frequenz die ein ganzzahliges Vielfaches der üblichen seriellen Übertragungsgeschwindigkeiten enthält, sogenannte Baudrate-Quarze, z.B. 11,59 MHz
Detlev T. schrieb: > So wie es aussieht, brauche ich wohl eine Taktfrequenz von 30MHz (wg. > UART) Was ist das denn für´n UART? DMX512?! Detlev T. schrieb: > Würdest du mir dann also zu dem Extrem 1MHz-Quarz und Faktor 30 > raten? Nö, wahrscheinlich würde ich 6Mhz und Faktor 5 nehmen. Oder 10Mhz und Faktor 3. Aber das UART gestattet einen fraktionalen Teiler, deshalb ist es möglich, fast jede Baudrate aus fast jeder CPU-Frequenz zu teilen, grob gesagt.
Zur Ergänzung/Erläuterung: Ich muss UARTs bei 19.2, 38.4 und 625 kbps betreiben. Letzteres erzwingt nach meinem Verständnis eine durch 5 teilbare MHz-Zahl. Richtig?
Detlev T. schrieb: > Letzteres erzwingt > nach meinem Verständnis eine durch 5 teilbare MHz-Zahl Nein. Es erzwingt eine 8- oder 16-fach höhere CPU-Frequenz oder deren Vielfache. Bei Benutzung des fraktionalen Teilers auch 1...6/7 davon.
Knut Ballhause schrieb: > Lies das ErrataSheet. Habe ich was übersehen? Die 32 KHz synchronisieren die internen 32 MHz.
Um eine Vorstellung zu bekommen, wie die Baudrate-Quarz-Frequenzen entstehen: schau einmal im Datenblatt des atmega8 nach, Seite 159 ff, eventuell auch die Seiten dort über die Berechnung der Taktfrequenz usw. - oder im Datenblatt der UART eines anderen Kontrollers.
Knut Ballhause schrieb: > > Unsinn. Das macht nur mehr Probleme beim Platinendesign. Und es steigert > den Strombedarf der Oszillatorstufe. Wenn ich 4-8MHz im Design verbauen kann, werde ich auch mit 16MHz genauso zurecht kommen. Strombedarffrage ist nur dann zu betrachten, wenn das System extrem sparsam ausgelegt werden muss, sonst fällt nicht ins Gewicht.
Joe G. schrieb: > Die 32 KHz synchronisieren die internen 32 MHz. Offiziell schon, aber die DFLLs sind fehlerhaft. Nicht komplett, aber so lala.. Und 4...10Mhz Quarze sind oft billiger und mindestens so genau, wie Uhrenquarze, wenn nicht genauer. Kommt halt drauf an. Der Uhrenquarz läuft noch im PowerSave, kann den XMEGA also wecken, was der XTAL nicht kann.
Hallo, um das Thema nochmal aufzufrischen: Ich bin ebenfalls neu in dem Gebiet Xmega und mache gerade meine ersten Gehversuche. Bin positiv überrascht von den vielen Neuerungen der Xmegas, im vergleich zum "guten alten" ATmega. Mit den Manual's bin ich nun ziemlich durch, aber eine Frage ist immernoch offen: Beim Xmega kann (lt. specs) als externe clock max. 16MHz angeschlossen werden, welche dann aber durch PLL nochmal multipliziert werden kann, richtig? Ich kann also nicht einfach einen 32MHz Quarz anschliesen? Im XMEGA A MANUAL steht unter Punkt 7.2: Four different reference clock sources can be chosen as input to the PLL: • 2 MHz internal oscillator • 32 MHz internal oscillator divided by 4 • 0.4 - 16 MHz Crystal Oscillator • External clock Heißt das nun das man, sobald auf Basis eines externen Taktes die PLL zum Einsatz kommt, dann ein quartz OSZILLATOR benötigt wird, oder kann man auch einen normalen Quarz (16MHz * PLL-faktor2) benutzen? PS: Bei meiner Anwendung geht es um sehr Zeitkritische dinge wie Frequenzerzeugung, deshalb möchte ich einen quarz. Gruß Manuel
32MHz-Quarz geht sowieso nicht, das gibts nur in Oberwelle und der Oszillator des Kontrollers kommt nur mit Grundwelle zurecht. Weil oberhalb 16MHz die Grundwellenquarze etwas schwierig herzustellen sind, hat man den Oszillator auf max. 16MHz festgelegt. Da dieser auch Eingang für den externen Takt ist, bleibts auch da bei den 16 MHz. Für genaue Taktfrequenz bei Frequenzerzeugung ist der Oszillator des Kontrollers wahrscheinlich nicht ausreichend. Einfache externe Oszillatoren für Digitaltakt ebenfalls nicht. Da wäre ein diskret aufgebauter Oszillator eher angebracht.
Peter R. schrieb: > Weil oberhalb 16MHz die Grundwellenquarze etwas schwierig herzustellen > sind, hat man den Oszillator auf max. 16MHz festgelegt. Da dieser auch > Eingang für den externen Takt ist, bleibts auch da bei den 16 MHz. Ok, danke für die Antwort. Das heißt ich kann einen normalen 16MHz Quarz (keinen Quarz-Oszillator) an XTAL1 - XTAL2 anschließen, wie ich es auch vom ATmega gewoht bin? Ein diskret aufgebauter Oszillator wäre das non-plus-ultra. Würde es gerne zuerst mit einer Quarzlösung testen. Gruß Manuel
Peter R. schrieb: > 32MHz-Quarz geht sowieso nicht, das gibts nur in Oberwelle und der > Oszillator des Kontrollers kommt nur mit Grundwelle zurecht. Seit wann gibt's die nicht mehr? bis 200 MHz Grundton z.B. http://www.foxonline.com/pdfs/fd.pdf > Weil oberhalb 16MHz die Grundwellenquarze etwas schwierig herzustellen > sind, hat man den Oszillator auf max. 16MHz festgelegt. Da dieser auch > Eingang für den externen Takt ist, bleibts auch da bei den 16 MHz. > Für genaue Taktfrequenz bei Frequenzerzeugung ist der Oszillator des > Kontrollers wahrscheinlich nicht ausreichend. Einfache externe > Oszillatoren für Digitaltakt ebenfalls nicht. Da wäre ein diskret > aufgebauter Oszillator eher angebracht. Was heißt genau? 10 ppm, Temperatur, Grundkalibrierung? Gibt's in fast jeder Form und Größe. 20 ppb http://www.conwin.com/datasheets/cx/cx207.pdf oder gleich die "Atomtaschenuhr" (< 1 ppb) http://www.symmetricom.com/products/frequency-references/chip-scale-atomic-clock-csac/SA.45s-CSAC/
Manuel Weikert schrieb: > Das heißt ich kann einen normalen 16MHz Quarz (keinen Quarz-Oszillator) > an XTAL1 - XTAL2 anschließen, wie ich es auch vom ATmega gewoht bin? ja ;)
Hat wunderbar funktioniert. Gab zuerst noch kleine Fragezeichen, mit den Registern die für Clockauswahl zuständig sind, hat sich aber dann schnell geklärt. Hat mich einfach ein wenig verwirrt, das im Datenblatt "Quarz-Oszillator" steht, obwohl damit scheinbar auch ein normaler Quarz gemeint ist. Finde es genial, dass man nun die Taktquelle im Programmablauf selbst ändern kann, und diese nichtmehr in die fuses geschrieben werden muss. PS: Mit dem Quarz bin ich gerade noch so im Toleranzbereich der erzeugten Frequenz, werd mir also den diskreten Oszillator erstmal sparen. ;-) Gruß Manuel
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.