[gelöst] 32MHz aktivieren, bei XMEGA128A1 geht's bei XMEGA64A3U nicht

OP #5561103
Lesenswert?

Hallo,

ich habe ein Board mit einem ATXMEGA64A3U. Bei diesem möchte ich den 
32MHz Takt verwenden.

Folgender Code läuft auf einer anderen Hardware mit ATXMEGA128A1, aber 
nicht auf dem hier erwähnten Board.
1
void sys_clk_init( void )
2
{
3
  OSC.CTRL |= OSC_RC32MEN_bm | OSC_RC32KEN_bm;  /* Enable the internal 32MHz & 32KHz oscillators */
4
  while(!((OSC.STATUS & OSC_RC32MRDY_bm) && (OSC.STATUS & OSC_RC32KRDY_bm)));    // wait till stable
5
  DFLLRC32M.CTRL = DFLL_ENABLE_bm ;             /* Enable DFLL - defaults to calibrate against internal 32Khz clock */
6
  CCP = CCP_IOREG_gc;                           /* Disable register security for clock update */
7
  CLK.CTRL = CLK_SCLKSEL_RC32M_gc;              /* Switch to 32MHz clock */
8
  OSC.CTRL &= ~OSC_RC2MEN_bm;                   /* Disable 2Mhz oscillator */
9
    
10
  return;
11
}


Errata hatte ich angeschaut, aber nichts relevantes entdeckt. Wer weiß 
Rat?

Grüße, Alex

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