So my initial plan (when I was shopping for microcontrollers) was to use the internal ADC and DAC of the microcontroller for feeding and reading the radio. However, it slipped my attention that there were a lot of qualities present in an audio-grade sampled setup that are different from just a simple ADC or DAC on a microcontroller. First, the sample rates for the ADC and DAC can be as high as 192kHz, which was really pushing it for the on-chip DAC. Second, audio signals are recorded and reproduced with higher resolution. While that doesn't mean that you get all of the added resolution, you definitely get more, and when the ADC is part of the detection chain.....
At any rate, this basically adds another layer of complexity to the design as a separate ADC and DAC chip is required. These ICs are typically called CODECs, and they operate using a protocol called I2S (Inter-IC Sound). Essentially this looks like SPI, but with some alternate signalling between words. Fortunately the ST32F407 has an I2S mode on two of the SPI peripherals, meaning that I can still use that chip for development. Other chips in the F4 series have actual "sound interfaces", so I'm not sure yet if I'm getting away with something or shooting myself in the foot. I'll assume the best and we'll see what the result is.
I found selecting a CODEC to be fairly difficult. I wanted:
- 192kHz ADC and DAC sample rates
- 24 bit input and output
- >100dB SNR on both the ADC and DAC
- Easy to use interfaces (avoid differential inputs/outputs)
There isn't a really easy way to do a comparison that I found to evaluate individual offerings, and the distributors (Digikey and Mouser) were less help than usual. To add to the confusion, the ADC and DAC can have different max sample rates, and only the highest is reported. Right now I'm leaning towards the Cirrus Logic CS4270