Feasability of real-time analog signals processing

Hi Arduino users :),

I'm wondering if I can use an Arduino microcontroller to do real-time (+- 5ms) analog signals processing. My project is to sample three signals at 2kHz and do FIR filtering and/or Fast Fourier Transform (FFT). If so, which board should I buy ?


Well, the 8-bit/16MHz AVRs can all do the same thing:
analogRead() takes ~110uS for 10-bit resolution read, so fastest reading is 9 KHz, for 4.5KHz max bandwidth.
You can kick off the read manually and be doing other stuff to gain more processing time.
Or use 8 bit resolution and gain time as well.

How much SRAM are you predicting this will need? That will drive microprocessror choice as well.

• 10-bit Resolution
• 0.5 LSB Integral Non-linearity
• ± 2 LSB Absolute Accuracy
• 13 - 260?s Conversion Time
• Up to 76.9kSPS (Up to 15kSPS at Maximum Resolution)
• Free Running or Single Conversion Mode
• Interrupt on ADC Conversion Complete