Estoy tratando de hacer un proyecto simple que implica adquirir algunos datos del adc del chip atmega8 y luego enviar esos datos a UART. Pero no puedo descifrar cuál sería el límite máximo de la frecuencia de la señal de entrada para que sea una adquisición de señal confiable. Estoy usando adc de 10 bits, pero realmente no me importa una precisión de 8 bits. También debo tener en cuenta el tiempo necesario para transferir mis datos a través del puerto serie. La hoja de datos dice
De forma predeterminada, el circuito de aproximación sucesiva requiere una frecuencia de reloj de entrada entre 50 kHz y 200 kHz para obtener la máxima resolución. Si se necesita una resolución inferior a 10 bits, la frecuencia de reloj de entrada al ADC puede ser superior a 200 kHz para obtener una frecuencia de muestreo más alta.
¿Significa eso que el muestreo está ocurriendo a 200kHz? Todo esto es muy confuso para mí.
¿Qué es el reloj ADC?
La sección que está viendo es para el reloj utilizado para el ADC. Sin embargo, este reloj no está directamente relacionado con la frecuencia máxima de muestreo. El reloj es lo que en realidad se está alimentando al módulo ADC, que debe ser más rápido que su muestreo para que pueda manejar algo de magia por usted.
¿Cómo se relaciona el reloj Max con la frecuencia de muestreo máxima?
Lo que dice la hoja de datos es que para obtener una resolución de 10 bits, su reloj no puede ser más rápido que 200 KHz. Cuando su reloj esté a esa velocidad, podrá muestrear su señal a 15,000 muestras por segundo.
Si no necesita los 10 bits de resolución, puede proporcionar al ADC un reloj más rápido y obtendrá una frecuencia de muestreo más rápida, pero la hoja de datos no es clara en cuanto a qué tan rápido puede ir y aún así obtener una resolución de 8 bits.
Asumiría que la relación entre el reloj y la frecuencia de muestreo es fija, por lo que 200K/15K = 13,33, lo que significa que puede bajar hasta 50 KHz de reloj, lo que da como resultado 3,75 kSPS.
¿Por qué un reloj mínimo para obtener una muestra de 10 bits?
El módulo ADC está realizando un muestreo y retención en el que el voltaje se mantiene esencialmente en un capacitor. Si reduce demasiado la velocidad del reloj, el voltaje puede comenzar a desvanecerse del capacitor antes de que se realice una muestra completa. Este cambio en el voltaje hace que no pueda obtener los 10 bits con precisión.
Entonces, ¿qué significa todo esto?
De acuerdo con el teorema de muestreo de Nyquist-Shannon, su frecuencia de muestreo debe ser al menos el doble de la frecuencia máxima de su señal. Puede obtener más información sobre por qué al mirar esta pregunta: Desconcertado por la frecuencia de Nyquist
Entonces, para obtener 10 bits de resolución, el máximo que puede tener su señal es 7.5 KHz, pero si necesita muestrear una señal más rápido que eso, puede hacerlo, pero la hoja de datos no menciona qué tan alto puede llegar o cuánto lastima tu resolución.
Creo que encontrará muy útil el siguiente artículo, describe el efecto de una frecuencia de muestreo más alta (más alta que la recomendación del fabricante) en la resolución ADC en AVR
Una línea en la hoja de datos, en letras grandes y en negrita, dice:
Hasta 15 kSPS a máxima resolución
Así que 15.000 muestras por segundo.
Como necesita el doble de muestras que su frecuencia para muestrear con precisión*, está limitado a 7,5 KHz.
* Según la teoría de Nyquist - Gracias chicos.
endolito