www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATxmega32a4 und Quarz?


Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Ich bin gerade dabei einen Print mit einem ATxmega32a4 zu entwerfen. Bis 
jetzt habe ich immer den Meag328p verwendet. Bei dem war es so, dass ich 
für die serielle Kommunikation einen externen Quarz verwendet habe, da 
der interne zu ungenau ist.
Wie ist es nun bei dem XMega32a4? Sind da die internen Frequenzen genau 
bzw. genau genug, um Bussystem wie UART, DMX, DALI... zu realisieren? 
Laut Datenblatt sind die Genauigkeiten beim XMega um einiges besser, 
aber reicht das?
Vielen Dank für eure Infos!

mfg
Andy

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat keiner Erfahrungen mit dem Thema??

lg

Autor: andz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kann nur vom Atmega32u4 sprechen, und da ist der interne Ostillatior 
auf jedenfall zu ungenau für USB...schätzt der interne Ostillatior wird 
bei aktuellen Megas ziemlich gleich sein...

Autor: Michael 93 (michael93) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

wenn du keine Platzprobleme hast: mach einfach alles so, dass du den 
Quarz weglassen kannst und dann kannst ja testen. Wenns ohne nicht 
klappt, dann kannst du ihn ja bei schlauer Vorbereitung ganz einfach 
noch reinlöten. Würd ich zumindest so machen.

Michael

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Ich probiere gerade beim ATxmega32A4 den externen Quarz zu 
konfigurieren. Leider gibt es dabei Probleme. Hat irgendwer von euch 
schon mal einen externen Quarz bei dem uC konfiguriert und kann mir den 
Code dazu geben?
Danke für eure Hilfe!

mfg
Andy

Autor: xmega (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus,


Andy schrieb:
> Ich probiere gerade beim ATxmega32A4 den externen Quarz zu
>
> konfigurieren. Leider gibt es dabei Probleme.

CodeVisionAVR
CodeWizardAVR V2.04.8 Evaluation
16Mhz Quarz!!!


// System Clocks initialization
void system_clocks_init(void) // wird hier aufgerufen
{
unsigned char n,s;

// Save interrupts enabled/disabled state
s=SREG;
// Disable interrupts
cli();

// External 16000,000 kHz oscillator initialization
OSC.XOSCCTRL=OSC_FRQRANGE_12TO16_gc | OSC_XOSCSEL_XTAL_16KCLK_gc;
// Enable the external oscillator
OSC.CTRL|=OSC_XOSCEN_bm;

// System Clock prescaler A division factor: 1
// System Clock prescalers B & C division factors: B:1, C:1
// ClkPer4: 16000,000 kHz
// ClkPer2: 16000,000 kHz
// ClkPer:  16000,000 kHz
// ClkCPU:  16000,000 kHz
n=(CLK.PSCTRL & (~(CLK_PSADIV_gm | CLK_PSBCDIV1_bm | CLK_PSBCDIV0_bm))) 
|
  CLK_PSADIV_1_gc | CLK_PSBCDIV_1_1_gc;
CCP=CCP_IOREG_gc;
CLK.PSCTRL=n;

// Wait for the external oscillator to stabilize
while ((OSC.STATUS & OSC_XOSCRDY_bm)==0);

// Select the system clock source: External Osc. or Clock
n=(CLK.CTRL & (~CLK_SCLKSEL_gm)) | CLK_SCLKSEL_XOSC_gc;
CCP=CCP_IOREG_gc;
CLK.CTRL=n;

// Disable the unused oscillators: 2 MHz, 32 MHz, internal 32 kHz, PLL
OSC.CTRL&= ~(OSC_RC2MEN_bm | OSC_RC32MEN_bm | OSC_RC32KEN_bm | 
OSC_PLLEN_bm);

// Peripheral Clock output: Disabled
PORTCFG.CLKEVOUT=(PORTCFG.CLKEVOUT & (~PORTCFG_CLKOUT_gm)) | 
PORTCFG_CLKOUT_OFF_gc;

// Restore interrupts enabled/disabled state
SREG=s;
// Restore optimization for size if needed
}

Gruß xmega

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieh doch einfach einen Uhrenquarz an den TOSC-Pins vor. Damit kannst Du 
alle (!) internen Clocks und PLLs bei Bedarf eichen und hast einen 
ganzen Zoo an Taktquellen zur Verfügung, die Du zur Laufzeit ändern und 
umschalten kannst.

Autor: XMega Fan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

der interne XMega 32MHz Oszillator hat eine sehr hohe Genauigkeit und 
Stabilität. Für RS232 vollkommen ausreichend!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.