Primeiro, para sua aplicação específica, você realmente só precisa de uma taxa de amostragem de aproximadamente 1 kHz, supondo que esteja sintonizando a frequência fundamental e não uma das parciais inarmônicas ...
De qualquer forma, quanto à taxa de amostragem máxima possível, o manual do Arduino diz:
Demora cerca de 100 microssegundos (0,0001 s) para ler uma entrada analógica; portanto, a taxa máxima de leitura é de cerca de 10.000 vezes por segundo.
Isso implicaria que a frequência de amostragem de 10 kHz é o máximo. Contudo. Você pode obter taxas de amostragem mais altas acessando os registros ADC diretamente . A página Processamento de áudio em tempo real do Arduino usa dois canais a 15 kHz, por exemplo. Portanto, o máximo de 10 kHz é apenas ao usar a função AnalogRead () integrada, porque possui muita sobrecarga.
O ADC é otimizado para melhor operação com uma velocidade de clock entre 50 kHz e 200 kHz:
Por padrão, o circuito de aproximação sucessivo requer uma freqüência de relógio de entrada [relógio ADC] entre 50 kHz e 200 kHz para obter a resolução máxima.
Como uma conversão ADC leva 13 ciclos de relógio, isso seria uma taxa de amostragem de 4 kHz a 15 kHz. De acordo com o AVR120: Caracterização e calibração do ADC em um AVR :
Para um desempenho ideal, o relógio ADC não deve exceder 200 kHz. No entanto, frequências de até 1 MHz não reduzem significativamente a resolução ADC.
A operação do ADC com frequências maiores que 1 MHz não é caracterizada.
Frequência de clock de 1 MHz = frequência de amostragem de 77 kHz, então esse é o máximo realista.
O tópico do fórum Leia Analógico Mais Rápido? tem mais sobre isso.