Xmega mit externem 32,768kHz kalibrieren

OP #1658579
Lesenswert?

Hallo Zusammen,

ich möchte gerne einen Xmega128A1 bei einem internen clock von 32MHz 
betreiben, der über einen externen 32,768kHz abgeglichen werden soll.
Leider fuktioniert dieses bei mir aber nicht, der externe Quarz fängt 
nicht an zu schwingen. Der uC gibt nur eine Gleichspannung von 0,5V auf 
beide TOSC Pins(PORTQ PIN 0&1).
Nach mehrmaligen durchschauen der Datenblätter bin ich mir relativ 
sicher, dass dies nicht mehr an einer falschen Register belegung liegen 
kann.
Mir stellt sich noch die Frage, wie ich die Ports einstellen soll die 
stehen momentan auf Input, habe aber auch schon einen auf Out (Totempole 
ohne Pull-...) gestellt. Aber es gab keine Veränderung.

Schon mal vielen Dank!!!
Gast #1658674
Lesenswert?

Hallo,

mein Code:

//32Mhz  Interner Takt (kalibriert mit 32 khz Quarz)atxmega128a1 Pin 
85/86

Aufruf:  system_clocks_init_32mhz();


void system_clocks_init(void)
{
unsigned char n,s;
s=SREG;
cli();

// External 32,768 kHz oscillator initialization
// External 32.768 kHz crystal oscillator low power mode: On
OSC.XOSCCTRL=OSC_X32KLPM_bm | OSC_XOSCSEL_32KHz_gc;
OSC.CTRL|=OSC_XOSCEN_bm;
while ((OSC.STATUS & OSC_XOSCRDY_bm)==0);
// Internal 32 MHz RC oscillator initialization
// Enable the internal 32 MHz RC oscillator
OSC.CTRL|=OSC_RC32MEN_bm;
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;
// Internal 32 MHz RC osc. calibration reference clock source: 32.768 
kHz Ext. Crystal Osc.
OSC.DFLLCTRL=(OSC.DFLLCTRL & (~OSC_RC2MCREF_bm)) | OSC_RC32MCREF_bm;
DFLLRC32M.CTRL|=DFLL_ENABLE_bm;
while ((OSC.STATUS & OSC_RC32MRDY_bm)==0);
n=(CLK.CTRL & (~CLK_SCLKSEL_gm)) | CLK_SCLKSEL_RC32M_gc;
CCP=CCP_IOREG_gc;
CLK.CTRL=n;
OSC.CTRL&= ~(OSC_RC2MEN_bm | OSC_RC32KEN_bm | OSC_PLLEN_bm);
n=CLK.LOCK | CLK_LOCK_bm;
CCP=CCP_IOREG_gc;
CLK.LOCK=n;
PORTCFG.CLKEVOUT=(PORTCFG.CLKEVOUT & (~PORTCFG_CLKOUT_gm)) | 
PORTCFG_CLKOUT_OFF_gc;
SREG=s;
}


Gruß GG
Gast #1658719
Lesenswert?

Hallo

Ohne den Processor jetzt zu kennen: Warum sollte er den
außen eventuell oder auch nicht angebrachten Quarz zum Schwingen
bringen, wenn du ihm sagst, er soll den inneren nehmen?


Gruß
Joachim
OP #1662592
Lesenswert?

Leider funktioniert das kallibrieren über den externen Quarz, auch mit 
euren Ratschlägen, immer noch nicht. Ich werde jetzt mal schauen, wie 
ich herausfinden kann ob der Quarz vielleicht defekt ist. Ich habe jetzt 
alle Clock einstellungen des Xmega durch wo der externe Quarz 
angesprochen wird. KEINE ÄNDERUNG DES PORBLEMS!

Falls ich noch etwas herausfinde lasse ich es euch wissen.

Gruß

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