El detector de audio que ha elegido no es viable para las necesidades de su proyecto.
El KY-038 es un sensor muy simple (se muestra a continuación). Sin preamplificación a la salida analógica. El potenciómetro principal ajusta el umbral para el detector de nivel, aunque también tiene un efecto de ganancia para el micrófono Electret (que tiene un FET incorporado). Desafortunadamente, la ganancia y la impedancia de salida del Electret están vinculadas, y esto lo convierte en un candidato muy pobre para proporcionar una buena entrada de audio al Arduino A / D sin un previo / amplificador externo.
ElamplificadoroperacionalenelKY-038esun LM393 y si examine el esquema en detalle para ver que puede convertir el circuito en un amplificador analógico con un ajuste de compensación ... sin embargo, no es ideal. Ponga una resistencia de 50k Ohm de A0 a tierra y 100k Ohm de D0 a A0. Luego puede ajustar el potenciómetro para obtener 2.5 V en la salida D0 y usarlo como señal analógica.
No te recomiendo que hagas esto, pero te recomendaría que compres un módulo de micrófono / amplificador de audio más adecuado ($ 2-3) como el que venden muchos proveedores de Ebay basado en el MAX4466 . ¡El control de volumen realmente funciona en este módulo y tiene una sensibilidad bastante razonable!
Suponiendo que pueda obtener el audio que necesita, proporcione una conversión que le permita comprender que tanto la amplitud como los componentes de frecuencia se pueden hacer mejor implementando una FFT en el Arduino.
Si esta es su primera incursión en FFT, le recomiendo que use un proyecto de pelota rebotadora como el que proporcionó por Adafruit . Esto utiliza el mismo amplificador de micrófono basado en MAX4466 y puede representar un buen punto de partida para que aprenda.
Si desea utilizar su propio código FFT y A / D, deberá poder ejecutar su A / D con un alto índice de conversión continua. No recomiendo que vaya por encima de la tasa máxima de conversión de 9.6kHz que obtiene en el Arduino. El teorema de Nyquist dice que a esa velocidad de muestreo de 9.6 kHz, el componente de frecuencia más alto que puede resolver es 4.8kHz.
Si este ancho de banda no es suficiente para usted, deberá aumentar la tasa de conversión A / D modificando el registro ADCSRA. El valor predeterminado para el A / D es 128 por defecto, puede leer el Hoja de datos de ATMega328 28.9.2 para obtener más información. Cuanto mayor sea la tasa de conversión, más problemas tendrá con el ruido y esto afectará la cantidad de bits en los que puede confiar para la amplitud.
El último comentario es que en la pregunta que dices que quieres grabar el audio. Esto implica que cuando lo reproduzcas quieres entenderlo. ... otra razón más para abandonar el KY-038 y obtener un mejor módulo de micrófono / preamplificador con buena ganancia y linealidad.