AnsweredAssumed Answered

Configure I2S using pll not working

Question asked by Jacinto Moreno on Apr 6, 2018
Latest reply on Apr 9, 2018 by jeremyzhou

Hi,

 

I am trying to configure the I2S interface to use with pll but unfortunately isn't working. I am not sure what I am doing wrong. I have looked at the example within the SDK but the drivers in there have different functions to the ones I have, for instance in the SDK example there is a slm_clock.c file which has all the functions to configure the I2S with pll (enable clock peripherals attach clock peripherals etc..); instead I have two different files (pll_5460x.c and clock_5460.c) with different functions to the ones in the example.

 

This is what I currently have:

/* PLL data for input = 12 MHz */
static const AUDPLL_SETUP_T pll_setup_48KHz = {
    0x00007C40,
    0x0000002D,
    0x0000001B,
    0x0002074,
    0x00800000,
    24576000,
    0 * PLL_SETUPFLAG_WAITLOCK,             /*!< PLL setup flags, Or'ed value of PLL_SETUPFLAG_* definitions */
};

 

    Chip_Clock_SetAudioPLLSource(SYSCON_AUDPLLCLKSRC_FRO12MHZ);
    Chip_Clock_SetAudioPLLFreq(&pll_setup_48KHz);
    Chip_Clock_EnablePeriphClock(SYSCON_CLOCK_IOCON);
    Chip_IOCON_PinMuxSet(LPC_IOCON, 3, 11, (IOCON_FUNC1 | IOCON_MODE_INACT | IOCON_DIGITAL_EN));
    Chip_Clock_DisablePeriphClock(SYSCON_CLOCK_IOCON);
    Chip_Clock_SetMCLKClockSource(SYSCON_MCLKSRC_AUDIOPLL, 1);

 

Any help would be really appreciated.

Outcomes