Yesterday was spent getting the clock system in the STM32F205 up and running. ST provides an Excel spreadsheet which makes this task easy – or at least, I'm assuming it does, because I don't have Excel and can't open their secured spreadsheet on my non-Microsoft platform. So I had to do it all by hand. (Hey, ST! Make an online JavaScript+HTML5 clock configuration tool! Or I'll do it for you! :-) )

So that now I have the processor running full-blast at 120MHz, it's time to get the audio stuff working. It didn't take long, really. I just had to get the right multiplication and division factors in place, turn on the I2S peripheral and configure it (only two registers), and then enable the "alternate function" for the pins that I used to interface to the audio codec chip. And here's what I get:

The 11.2896MHz MCLK signal, which is 256x the audio sampling rate (44.1kHz):

Audio MCLK signal -- 11.2896MHz for a 44.1kHz sampling rate
Audio MCLK signal – 11.2896MHz for a 44.1kHz sampling rate

The 44.1kHz LRC (left/right clock) or frame clock:

Audio frame clock -- 44.1kHz
Audio frame clock – 44.1kHz

Bullseye!

Now to wire up the audio codec and try to speak with it via I2C. Perhaps I'll start with my brand new Bus Pirate, then move on to doing it from the STM32.