¿El amplificador de audio controla el volumen con Arduino?

1

Estoy creando un proyecto que emite audio a través de un Arduino a un altavoz de computadora con alimentación. Esta señal de audio proviene de una búsqueda de tabla sinusoidal que paso a través de varias frecuencias, configurando un pin PWM en tabla de ondas [0], luego tabla de ondas [1], etc ...

Me gustaría modular la intensidad de esta señal, pero no quiero simplemente dividir el valor de la tabla de ondas por un entero porque me preocupa que distorsione el audio, en lugar de tener un rango de 0-255 para la onda sinusoidal, por ejemplo, solo puede ir de 0-3 y ya no es una buena forma de seno.

¿Hay alguna manera de que pueda usar un segundo pin Arduino PWM para controlar un amplificador para cambiar la señal analógica que proviene del Arduino para modificar el volumen antes de que llegue al altavoz?

¡Gracias!

    
pregunta user358829

2 respuestas

2

Probablemente pueda usar un segundo PWM para generar un voltaje y luego enviarlo a un VCA, u obtener un potenciómetro digital externo (DPOT) y usarlo para cambiar la ganancia de un amplificador operacional si está dispuesto a agregar más ICs. Sin embargo, si no necesita tantos niveles de volumen y ya tiene un montón de PWM de hardware en su Arduino, puede conectarlos a través de algunas resistencias en serie para crear un circuito de verano. Suponiendo que el altavoz de su computadora tiene un amplificador incorporado con una alta resistencia de entrada, debería poder agregar varias salidas PWM (por ejemplo, 4) a través de resistencias de 1K.

Siempre y cuando los PWM estén sincronizados, deberían obtener 1/4, 2/4, 3/4 y amplitud completa usando 4 canales (por ejemplo). Solo haga que todos generen lo mismo y desactive algunos de los PWM (configurándolo como un 0 digital) si desea reducir el volumen.

[EDITAR] En realidad, pensando más en el problema, puede hacerlo con menos hardware si utiliza las salidas digitales como atenuación. Considere el siguiente circuito:

simular este circuito : esquema creado usando CircuitLab

Básicamente, cada E / S digital le da un poco de control de volumen, y puede obtener tantos bits como tenga E / S extra. Su volumen más alto sería con todas las E / S digitales configuradas en "alto-Z" o entrada, ya que su amplificador solo vería el PWM. Si configura cualquiera de las E / S digitales con un valor de '0' atenuaría la señal (por ejemplo, si el 0 digital emitía un '0', su señal de audio se atenuaría en un 50% debido a la división de voltaje). en el caso anterior, tendría 8 niveles de volumen, pero puede extender fácilmente el circuito si necesita más bits. También puede convertirlo en un estrechamiento logarítmico seleccionando cuidadosamente los valores de resistencia.

    
respondido por el Zuofu
0

Puede usar un potenciómetro controlado digitalmente entre la salida del filtro y la entrada de audio. Aquí hay un ejemplo usando el DS1669. ( enlace

    
respondido por el JIm Dearden

Lea otras preguntas en las etiquetas