Arduino Zero (SAMD21) FDPLL with CMSIS @MicrochipMakes #SAMD21
Shawn Hymel digs into the features of the SAMD21 microcontroller, exploring the fractional digital phase locked loop (FDPLL).
One of the coolest, tucked-away features in the SAMD21 is the fractional digital phase locked loop (FDPLL). I still only have a vague idea of how phase locked loops (PLLs) work, but nonetheless, we can use the SAMD21’s PLL to create a 96 MHz clock.
The bad news is that, to the best of my knowledge, you cannot use this clock signal as the main clock source for the SAMD21 (essentially overclocking it). However, we can use it to power some other peripherals, like the generic clocks, timers, and pulse width modulation (PWM) signals.
If you are not familiar with how the clocks on the SAMD21 work, I recommend reading my previous post. You will also need to refer to the SAMD21 datasheet.
Shawn goes through the process of setting up various examples and provides sample code in Arduino. It looks like the next example may be a digitally controlled oscillator (DCO).