PIC32MZ Oscillator - System Clock (SYSCLK)
Last modified by Microchip on 2023/11/10 11:08
System Clock (SYSCLK) Generation
The System Clock (SYSCLK) provides the time base for the peripheral clocks, Direct Memory Access (DMA), interrupts, and Flash. SYSCLK is determined from one of the input clocks: SPLL, POSC, FRCDIV, LPRC, BFRC, and SOSC.
The default configuration for SYSCLK is programmable and can also be changed at run-time. See the code examples below.
// default system clock = FRCDIV
#pragma config FNOSC = FRCDIV
// default system clock = SPLL
#pragma config FNOSC = SPLL
...
// run-time config SYSCLK = FRCDIV
PLIB_OSC_SysClockSelect(OSC_ID_0, OSC_FRC_BY_FRCDIV);
// run-time config SYSCLK = POSC with SPLL
PLIB_OSC_SysClockSelect(OSC_ID_0, OSC_PRIMARY_WITH_PLL);
#pragma config FNOSC = FRCDIV
// default system clock = SPLL
#pragma config FNOSC = SPLL
...
// run-time config SYSCLK = FRCDIV
PLIB_OSC_SysClockSelect(OSC_ID_0, OSC_FRC_BY_FRCDIV);
// run-time config SYSCLK = POSC with SPLL
PLIB_OSC_SysClockSelect(OSC_ID_0, OSC_PRIMARY_WITH_PLL);