Estoy haciendo un proyecto que lee la frecuencia de las señales de audio generadas desde el dispositivo Android a través del conector para auriculares. El conector de audio está conectado al microcontrolador Atmega como se muestra en la figura .!
Estoy utilizando el comparador analógico para comparar entre un voltaje de referencia 2.61v y la señal de audio (polarizado DC; AC + 2.5v). El rango de la señal de audio es de 200 mv p-p, por lo que, después de la polarización de CC, será de 2.3 a 2.7. Cuando la entrada del comparador 1 pasa 2.61 (voltio de referencia), un temporizador comienza a medir la frecuencia. Pero el problema es que no estoy obteniendo una lectura de frecuencia estable. Por ejemplo, si la señal es 1000Hz, la leo entre 4000 y 5000 Hz. Los valores siempre cambian. A veces, el comparador genera uno durante unos pocos microsegundos, incluso si no hay señal de audio (la salida debería ser cero). !!
Creo que el problema es uno de estos:
- La fuente de alimentación tiene una ondulación alta, por lo que no puedo leer correctamente las señales de bajo nivel.
- Debería usar un condensador de bloqueo superior C2 como 10uF en lugar de 100nF.
- El 200 mv está en el rango de señales de ruido, debería amplificarlo antes de leer.
- El divisor de voltaje debe usar valores altos de resistencias como 3MOhm como en el proyecto de secuestro a continuación.
¿Qué piensas?
Esto es similar al proyecto de secuestro propuesto por UMICH. Su esquema se muestra a continuación.