Vintage DAC para audio RaspberryPi (4 / 6 paso)

Paso 4:.. .adding un I2S convertidor...

Aquí es que empieza la diversión...
Mirando la pajina otra vez noté que el I2S salida (realmente miro la documentación de chip usada en el proyecto de HifiBerry cuyo conductor estoy usando, el chip es un pcm5102) de la RPI es ligeramente diferente de lo que espera el chip oversampler. En general la señal de I2S "estándar" retrasa el una reloj de datos detrás de la señal LR. ¿Cómo compensar esto?

Hay dos maneras de abordarlo:
1. programa de un controlador de kernel que no retrasar los datos. El conductor de pcm5102 explícitamente establece la demora de datos 1 en el registro TXC_A del motor PCM SGCN (documentación aquí página 119 +). Cambiar esto a 0 debe hacerlo. Pero no me gusta compilar un Kernel de RPI ahora...
2. construir algunos vintage lógica para hacerlo, sí que es lo que me gusta :)

Aquí es un esquema...
La idea es retrasar los datos por el 1 y el LR de la señal por 2, esto mueve los datos hacia adelante en el tiempo (comparado con la señal LR) para que alinee como quería. Para ello, necesitamos 3 x D-chanclas y un inversor para el reloj. He encontrado 2 x 4035 y 4001 en mi colección vintage chip, estos (podría también será construir con 7474 74174 y algunos otros ICs).
El 4035 es un registro de cambio de 4 bits versátil (tiene 4 Flip-flop en una línea) 4001 es un x 4 ni que actúa como inversor entonces las entradas están apretados juntos.
Utilizo un 4035 a cambio de los datos y otra para cambiar de puesto el LR. Las salidas Q1-Q4 mostrará la entrada retrasada por 1-4 relojes (la entrada se desplaza a través del registro, que es que cambio los registros). Por lo que el oversampler recibe sus nuevos datos de Q1 de la palanca de cambios de datos y LR de Q2 de la palanca de cambios de LR. Simple ¿no? El oversampler obtiene el reloj invertido (especie de retrasado por ciclo de reloj 1/2) esto es necesario porque la palanca de cambios es necesario algún tiempo para reloj en los datos y ofrecer una salida estable.

Las imágenes muestran la señal LR original y retardada, señal de reloj, análogo de salida con grietas.

Resultado...
Sí que suena como música.
Todavía un poco cracky (~ 50Hz tock tock) - podría ser una deriva del reloj, investigar más adelante...

¿Cómo suena?
Un poco ruidoso en los medios y altos - podría ser el auricular, la construcción de amplificador de auriculares es hasta un poco ruidosa para mi gusto y mis auriculares. Investigando...
Bajado el volumen de HP, mencioné que el PCB tiene un espacio para un pote de volumen. He insertado 4 resistencias que baje el volumen un poco.

¿Énfasis?
Que por sí solo es un hack de la vieja escuela, para superar limitaciones de 14 bits. Funciona un poco como el Dolby, supresión de ruido, cuando grabación añadir quitar ruido, cuando jugar y desaparezca el ruido de transmisión con él - algo como eso.
Corte del perno 36 de la TA9200 y conectados ahora abrir traza a un interruptor a tierra/5V por lo que yo puedo cambiar manualmente. El valor predeterminado era mejor cuando uno hackeado, por lo que debe ir a 5V para desactivar el énfasis. Este conmutador activa un transistor como en la sección mudo pero éste cambia la respuesta del filtro de salida girando/partes de la red de filtro - diseño de circuito análogo difícil.

Craquelador???
Creo que las grietas vienen de una deriva del reloj. El RPi impulsa los datos con su reloj de 44,1 kHz * 32 bits, la oversampler los procesos que con su propio reloj (también de 44.1 kHz * 32 (* 12 da 16.9 MHz)) ambos reloj deriva lejos hasta un bit de datos salta a su vecino poco escalado con eficacia por 2 que produce el pico de una sola muestra.
Solución 1 - extraer datos de la RPi con el excedente del reloj de samplers. Esto haría que el DAC y OS el reloj maestro. Implicaría cambiar el controlador del módulo (o usando otro)
Solución 2 - ser hacker hardware loco y construir un multiplicador de reloj. Esto podría multi el reloj de datos (44100 * 2 * 16 por segundo) por 6 o 12 para producir el reloj para el circuito de sobremuestreo. Esta voluntad de eliminar el segundo reloj y su voluntad de ser nada a la deriva, ya que todos los relojes se derivan de un reloj común.
Una forma de lograrlo podría ser el uso de una línea de retardo. Otro implica PLLs - nuevo para mí también. Pensamiento...

Artículos Relacionados

DIY Vintage luz para carpa cartas

DIY Vintage luz para carpa cartas

estoy trabajando en la planificación y lanzar mi BFF un baby shower, y ella escogió un tema increíble; Vintage circo francés!  Tan naturalmente, que quería hacer la ducha más épica nunca conocido a hombre (la mujer).Una de las cosas que quería crear
Vintage voltaje para equipos viejos

Vintage voltaje para equipos viejos

trabajo en un montón de amplificadores de guitarra vintage/válvula del tubo, y los mayores esperan que tensión de red en algún lugar en el rango de 115-117 VAC. Moderna red de América del norte suelen ser significativamente mayor en estos días, a men
Modificar xRocker juego silla para audio USB!

Modificar xRocker juego silla para audio USB!

este es mi primer instructivo!por lo tanto, ya estaba harto de los enchufes en mi silla xrocker romper y solo me da audio mono. había probado reemplazar con los nuevos solo que me rompe un mes o tan más adelante. así que me dije a mí mismo qué enchuf
Altavoces para audio del coche de bluetooth

Altavoces para audio del coche de bluetooth

Esto es una continuación de la configuración de bluetooth.Este tutorial le mostrará cómo hacer de altavoz para los altavoces.Se necesita un taladro: Sierra 4 en agujero, 2 en la sierra.Dremel herramienta: broca, broca de lijado, pulido pocoDebo adver
Matriz de LED 8 x 8 para RaspberryPi y 3 programas de

Matriz de LED 8 x 8 para RaspberryPi y 3 programas de

Se trata de una matriz de LED 8 x 8 para una RaspberryPi y tres programas a ejecutar en él:1 - un programa "Hola mundo" con una fuente completa de inglés.2 - un juego de dados.3 - una versión pequeña de 8 x 8 del juego de la vida de Conway..Se n
Calculadora de Temporizador 555 para RaspberryPi, Arduino o un PC Linux

Calculadora de Temporizador 555 para RaspberryPi, Arduino o un PC Linux

Este instructable es una calculadora para determinar los valores de resistor y capacitor a usar circuitos Temporizador 555 en común. He incluido versiones para el RaspberryPi y haría el Arduino con circuitos simples a parpadear dos LED como el 555. L
¿Enchufe: Cómo hackear su Sifteo Base para el más grande del Audio

¿Enchufe: Cómo hackear su Sifteo Base para el más grande del Audio

jamas imagine lo que podría hacer con algo que alguien lo creó pero poner una vuelta en él? ¿Alguna vez ha sentido esas ganas de hackearlo y quite algo y luego poner detrás junto?Bueno, si usted contestó sí a alguna de las preguntas anteriores, como
Frambuesa Audio Multi-Room de Pi (móvil, Tablet, PC controlado)

Frambuesa Audio Multi-Room de Pi (móvil, Tablet, PC controlado)

han estado al acecho en Instructables hace unos años, pero nunca han publicado una yo mismo. Ahora he comprado una casa propia es la hora de someterse a algunos proyectos y compartirlos con la comunidad.En mi primer proyecto: voy a mostrarte cómo con
Convertir su frambuesa Pi en un inalámbrico portátil Bluetooth Audio sistema A2DP

Convertir su frambuesa Pi en un inalámbrico portátil Bluetooth Audio sistema A2DP

gente de Howdy! Tenía la idea de convertir mi frambuesa Pi en algo así como el sistema de audio portátil de Beats por Dre encontrar aquí:http://www.beatsbydre.com/Speakers/Beatbox-Portable-USB/Beatbox-Portable-USB, default,pd.htmlEs un producto fresc
Salida de Arduino Audio

Salida de Arduino Audio

Generar el sonido o la salida voltajes analógicos con un Arduino. Este Instructable le mostrará cómo configurar un muy básico digital al convertidor de análogo para que puedas empezar a generar las ondas analógicas de todas las formas y tamaños de un
Arduino + discurso Vintage chip

Arduino + discurso Vintage chip

¿Alguna vez has querido hacer tu arduino hablar contigo? ¿Quieres una voz suena robótico vintage fresco para tu próximo robot? ¿No satisfecho con las opciones de sonido áspero que has encontrado hasta ahora? No mire más! En este Instructable, te most
Módulo de retardo de audio

Módulo de retardo de audio

este proyecto muestra cómo hacer una unidad que puede producir un retraso de hasta 8 segundos en una señal de audio de entrada.El circuito de salida una versión retardada de la señal audio de entrada. Dependiendo de la cantidad de memoria implementad
Carteles Vintage - deportes - banderas - Navidad - otros signos

Carteles Vintage - deportes - banderas - Navidad - otros signos

Poco de pintura, algunos rescatados de madera, e imaginación y cualquier persona pueden hacer un cartel vintage. Utilizo pinturas acrílicas, las probabilidades y termina (firma, pelotas de béisbol, bates de béisbol, decoupaged fotos y pasar un rato m
SensoDuino: Convertir su teléfono Android en un concentrador de sensores inalámbricos para Arduino

SensoDuino: Convertir su teléfono Android en un concentrador de sensores inalámbricos para Arduino

Actualizaciones23 de noviembre de 2013: SensoDuino 0.160 obtiene una cara izquierda.19 de noviembre. 2031: opinión: la increíble sinergia entre Arduino y Android.19 de noviembre de 2013: SensoDuino 0.159 está hacia fuera. Fecha teléfono Android (y, m