/
050: High-Accuracy ADC

050: High-Accuracy ADC

So far we've been using the Analog Digital Converter that's built into the RP2040, which has been good enough to digitize the pots.  But the PicoADK has a better ADC on board, the (name, specs, etc.)

Why bother using it?  If you try to use the PicoADK to create a voltage-controlled oscillator in an analog synthesizer, you will need to digitize a frequency controlling voltage that is calibrated at 1 volt per octave.  To get reasonably non-painful tuning, you will need an accuracy of better than 5 cents – 1/20 of a semitone, or 1/240 of an octave.  Rounding up to 1/256 of an octave, that means 8 bits of accuracy for every octave, or a solid 10 bits for a four-octave range.

The RP2040's built-in ADC has a nominal resolution of 12 bits, but the effective  resolution is only 8.7 bits (see section 4.9.3 of the RP2040 datasheet) which is good enough to digitize pots, but not good enough for frequency-determining control voltages.



Here we've replaced the internal ADC with the external channels.  For this you will need to move the connections on the pot board to the AD0-AD1 grove connector.


At the point, we've demonstrated all of the hardware on the PickADK board.  Going forward, we will move past "chirp" and look at various sound generating techniques.


NOTE: need to fix bugs: slow ADC SPI down to 12MHz and double-sample to get rid of pipelining problem.


Related content

200: Analog -> Digital -> Analog on the PicoADK2
200: Analog -> Digital -> Analog on the PicoADK2
More like this
080: Wavetable Synth
080: Wavetable Synth
More like this
040: Adding MIDI
040: Adding MIDI
More like this
Demo 5: Custom SAMD51 processor
Demo 5: Custom SAMD51 processor
More like this
070 Sample Player
070 Sample Player
More like this
QICSAMD51Pots
QICSAMD51Pots
More like this

Copyright © 2024 The President and Fellows of Harvard College * Accessibility * Support * Request Access * Terms of Use