Soy nuevo en ingeniería eléctrica y el primer proyecto que me gustaría hacer es hacer un convertidor de audio digital a analógico. Descubrí que una buena forma de hacerlo es utilizar una estructura R-2R para la conversión.
Me gustaría desafiarme y comenzar desde cero con la parte digital del circuito, además del hecho de que realmente no puedo encontrar ninguna solución en la web para ayudar a construirlo. Tengo un programa de simulación de circuitos y comencé a diseñar, mientras buscaba en la web todos los diferentes tipos de electrónica que podría usar para él.
Ahora creo que podría estar en algún lugar cercano al entendimiento del principio de un DAC, pero sería útil que alguien con experiencia pudiera ayudarme a verificar si realmente lo consigo. ¿Es este un lugar correcto para pedir eso?
Si es así, aquí está el circuito que he diseñado:
He utilizado un registro de desplazamiento con cierre de salida para cada canal y Q7S vinculado de uno a otro para alimentar los datos. ¿Es correcto que los archivos de audio alternen los canales izquierdo y derecho, o viceversa, en bloques? por ejemplo, en un archivo de 8 bits: 0010 0111 para la izquierda después de 0010 0110 para la derecha?
Los registros de desplazamiento que he usado aquí son 74HC595. Cuando se cambien los bits, ninguno de los pines estará (momentáneamente) activo. Cuando se activa el pestillo [pin STCP], los bits se transfieren del registro de desplazamiento al registro de almacenamiento, donde emitirán directamente su valor a los pines correspondientes y permanecerán activos hasta que se permitan los siguientes 16 bits.
Luego está el cristal, para el cual he usado una señal de onda cuadrada para imitar una con la frecuencia de oscilación correcta: 24,576MHz. Alimenta el contador en el que la frecuencia se divide para generar las frecuencias que necesita mi DAC. En este caso, la frecuencia de la muestra debe ser de 192.000 kHz y, por lo tanto, la frecuencia a la que se desplazan los datos debe ser de 3.02MHz (192.000 x 16 bits). La velocidad de reloj de 192.000 kHz se utiliza para activar STCP.
Lo siguiente que quiero hacer es descubrir cómo cargar datos de una fuente (Raspberry, por ejemplo) a través de I2C quizás en un búfer en el DAC y desde allí registrar los bits en el circuito que ves aquí.
Si cree que estoy o no estoy en el camino correcto, sería muy útil que me lo haga saber.
¡Gracias! Rogier
Por cierto, olvidé mencionar que el DAC que me gustaría construir es de al menos 24 bits por canal a 96kHZ. Solo ocupa mucho espacio en esta amenaza y no debería ser difícil agregarlos después. Es el mismo principio.
Respuestas:
Esto es lo que estoy pensando:
Desafortunadamente, la página de wikipedia sobre los DAC de escalera R-2R es incorrecta cuando dice que la escalera R-2R funciona como un divisor actual en esta aplicación. Si bien una escalera R-2R se puede usar como divisor de corriente, en realidad funciona aquí como un divisor de voltaje. Aquí hay un análisis detallado.
Considere solo el LSB de la escalera por sí mismo:
simular este circuito : esquema creado con CircuitLab
Independientemente de la posición del interruptor, la resistencia de Thevenin de este simple divisor de voltaje es solo R. El valor de la fuente de voltaje de Thevenin es 0V o 1/2 × Vref.
Ahora, considere lo que sucede cuando agrega la siguiente etapa de la escalera R-2R:
simular este circuito
Puede ver que este es el mismo tipo de divisor de voltaje que teníamos en el primer caso, excepto que la cantidad de combinaciones de voltaje ha aumentado. Sin embargo, la resistencia de Thevenin de este circuito sigue siendo solo R, y la fuente de voltaje de Thevenin ahora es 0/4, 1/4, 2/4 o 3/4 × Vref.
Por inducción, puede ver que puede agregar cualquier número de etapas a la escalera, y el único efecto es que el número de opciones para el valor de la fuente de voltaje de Thevenin se multiplica por 2 para cada etapa. La resistencia de la fuente permanece exactamente igual para cualquier número de etapas.
Si la impedancia de carga es infinita, el voltaje de salida de la escalera coincidirá exactamente con el voltaje de Thevenin. Pero si la carga tiene algún valor finito de resistencia, el único efecto será crear un divisor de voltaje con la resistencia de la fuente Thevenin, escalando el voltaje de salida en una relación fija, pero sin tener otro efecto en la precisión básica o linealidad del DAC.
Tenga en cuenta que en el circuito original de Rogier (el que está en la pregunta), los opamps están en una configuración invertida, lo que significa que la salida de la escalera R-2R está vinculada directamente a una tierra virtual. Esto significa que el valor de salida es realmente la corriente que fluye a través de Rth (que es solo R), y esta corriente también fluye a través de la resistencia de retroalimentación del opamp. El voltaje de salida del opamp es el voltaje que se requiere para igualar esas dos corrientes, y funciona a -Rfb / R × Vth. Como usa una resistencia de retroalimentación de 2R, la salida termina siendo -2 × Vth.
Parece haber cierta confusión sobre si la escalera R-2R se está utilizando como un divisor de voltaje o un divisor de corriente, así que aquí hay una ilustración de cómo puede funcionar este último, para mostrar las diferencias clave entre este y el circuito del OP.
simular este circuito
Tenga en cuenta que las corrientes que fluyen hacia abajo a través de las resistencias 2R son ponderadas en binario. Esto funciona porque la resistencia efectiva mirando hacia la derecha desde cualquiera de las uniones triples también es exactamente 2R. Por lo tanto, la corriente que fluye desde la izquierda siempre se divide por igual entre la rama inferior y la rama derecha.
Tenga en cuenta que una suposición clave aquí es que todas las patas están atadas al mismo voltaje (cero, en este caso). También es interesante observar que los voltajes en los nodos de unión también están ponderados en binario.
Esto se puede usar para construir un DAC de salida de corriente de la siguiente manera:
simular este circuito
Las corrientes en las resistencias en este circuito son exactamente las mismas que en el diagrama anterior, porque independientemente de la posición en que se encuentre cada uno de los interruptores, la resistencia correspondiente está conectada a una tierra real en el circuito.Yo fuera¯¯¯¯¯¯¯¯¯ autobús, o a un terreno virtual en el Yo fuera autobús. Las corrientes en los dos autobuses siempre se suman a Iref. Un opamp puede convertir la corriente de salida a un voltaje, y el rango de voltaje es simplemente -Iref × R7.
fuente