Pre Amplificador Digital + PCB

Para los que deseen hacer algo fuera de lo común les propongo realicen este Pre Amplificador gobernado completamente digital. Realizado con una TDA7439 y un uC AT90S8515.

El circuito propuesto controla todas las funciones de la TDA7439.
4 líneas estéreos.
Ganancias independientes para cada línea.
Volumen.
Control de tonos. (Bajas, Medias y Altas.)
Balance.

El AT90S8515 controla un LCD de 20*2 para informaciónrmar las funciones en cada momento, lo cual ocurre por medio de (5)Sw, uno con la función de power, 2 con el volume y 2 con las funciones de control.
También posee un Vúmetro calibrado logarítmicamente en dB que originalmente fue escrito por Ger langezaal y modificado lo necesario para que trabajase en dicho circuito, tiene también implementado control por mando a distancia y un delay para conectar las bocinas después de 3seg.

Nota: Yo no utilizo el delay pues tengo funcionando un amplificador del tipo UcD.

El arranque por default de dicho pre amplificador es guardado en la E2Prom interna del uC, lo cual indica que podrán modificar desde que programen por primera vez o después que hagan sus ajustes y manden a apagar el pre amplificador.


Las variables que se guardan en la E2Prom si son diferentes al default siempre que se pulse el sw de power son:


Line in, Bass, Middle y Treble.


El volume máximo para power on es de -35dB pero este subirá desde -47dB a dicho valor cada 250ms y descenderá de donde este a -47dB para power off a la misma velocidad (Fader up & down).


La tabla para la E2Prom es la siguiente:
_______________________________________________________
! Line ! Gain_1 ! Gain_2 ! Gain_3 ! Gain_4 ! Bass ! Middle ! Treble !
_______________________________________________________

Line
Gain_1
Gain_2
Gain_3
Gain_4
Bass
Middle
Treble

Dirección 0x00hex = (Line in) con valores de (0x00-0x03)
0 = Línea 4…………………..3 = Línea 1

Dirección 0x01hex a 0x04hex = (Gain) con valores de (0x00-0x0F)
0 = 0dB……………………….0F = 30dB con saltos de 2dB por incremento.

Dirección 0x05hex a 0x07hex = (Tone)
0 = -14dB
7 & F = 0dB
8 = 14dB
Con saltos de 2dB por incremento.

Las 6 celdas siguientes son utilizadas por el uC para guardar la configuración del control remoto.


Modo de operación:


Pulsar Line (Sw) para cambiar de línea y después pulsar Setup/Enter (Sw) cuando ya tenga la deseada.
Pulsar Setup/Enter (Sw) para entrar en modo de Ajuste.
Aparecerá en el LCD “Bass Setup”.
Si desea modificar este parámetro pulsar de nuevo Setup/Enter (Sw) y variarlo con Up & Down (Sw), después de ajustado al valor deseado presionar Setup/Enter (Sw) para regresar al Menú.
Para moverse por los sub menús solo bastara con presionar Up & Down (Sw) y repetir el proceso anterior para variar dicho sub menú.

Los menús por los que podrán navegar son los siguientes:

Bass Setup
Middle Setup
Treble Setup
Balance Setup
Exit Setup

Para salir del Ajuste buscan Exit Setup y presionan Setup/Enter (Sw) y regresaran al Vúmetro que es lo que siempre estará ejecutándose en todo momento.

También posee un menú oculto, que solo se podrá entrar si se sostiene Setup/Enter (Sw) mientras presionamos Power (Sw), claro esta con el pre amplificador apagado.
Dicho menú es para modificar las ganancias de las entradas y configurar el control remoto.

Por ahora el Firmware publicado no posee la función del control remoto, la cual está programada para protocolo propuesto por PHILIPS llamado Rc5, pretendo hacer la subrutina de tal forma que podamos configurar el software memorizando el ID y las teclas que pulsen en el control.
De esta forma podemos utilizar cualquier control que tengamos en casa regados y solo le hará caso a dicho control, la verdad es que lo tengo trabajando pero tiene todavía algunos bug y solo cuando los corrija publicare la versión final pues esta la considero Beta por no poseer dicho menú.

Espero les sirva de algo este pequeño aporte.

Desde ya gracias a todos en el foro.

YoElMiCrO.
 

Adjuntos

  • DSC01319.JPG
    DSC01319.JPG
    87.3 KB · Visitas: 5,691
  • Pre_Digital.rar
    346.4 KB · Visitas: 4,260
Sugiero que se destaque, para que no se pierda el aporte y otros compañeros del foro lo puedan mejorar!!!.

Buen proyecto!!!

Saludos!!!
 
Si no es mucho pedir: por que no pones que en el display aparezca el nombre de la entrada seleccionada arriba y abajo el nivel de volumen en db´s, y si se desea cambiar a vu-metro (¿nivel de previo)?
 
Te comento....

Cuando le pulsas power on el LCD informa en la linea que se encuentra y luego
inicializa el vumetro despues de 5 segundos aproximadamente, si pulsas Vup/sw o Vdown/sw tambien informa el nivel en dB luego de 3 segundos aproxiamdamente vuelve al vumetro.

Lo tengo trabajando con un amplificador del tipo UcD y al verdad es que se escucha muy bien; A mi gusto fenomenal.
Ya estoy trabajando en lo del remoto para terminarlo pero no puedo probar las
subrutinas por que no lo tengo delante de mi, solo las estoy emulando en AVRStudio.

Gracias por el interes a este proyecto.
 
Bueno les diré que ya tengo terminado casi el proyecto, dentro de unos días publico la versión final del firmware. Ya esta incluye el control remoto, que termine utilizando protocolo propuesto por NEC y no el de Philips,el problema es que casi todos los IR de los DvD son NEC y como están por doquier termine utilizando este. Espero les sirva.
 
Bueno, como les prometí aquí está la versión final del firmware para este proyecto.
Les diré que el hardware sigue siendo el mismo, pero he hecho unas modificaciones en lo que respecta al software.
De un principio las direcciones donde guardaba en la E2Prom la he corrido un lugar más, debido a un bug que poseen los micro controladores de ACMEL y este se basa en que mientras el uC se inicializa es posible que la primera dirección de la E2Prom pierda su valor original o quede corrupto dicho valor.
Esto se traduce de la siguiente forma:

0x00 = No usado (Debido al bug mencionado).
0x01 = # de Línea de entrada (Ultima línea utilizada).
0x02 = Ganancia de entrada de la línea #1.
0x03 = Ganancia de entrada de la línea #2.
0x04 = Ganancia de entrada de la línea #3.
0x05 = Ganancia de entrada de la línea #4.
0x06 = Ganancia para las bajas frecuencias.
0x07 = Ganancia para las medias frecuencias.
0x08 = Ganancia para las altas frecuencias.

Las siguientes direcciones en la E2Pron las utilizo para salvar la configuración del control remoto o mando a distancia, las mismas están constituidas por palabras (Word).

0x09-0x0A = Dirección o ID del IR en cuestión.
0x0B-0x0C = Comando asignado a Volume Up.
0x0D-0x0E = Comando asignado a Volume Dwn.
0x0F-0x10 = Comando asignado a Setup.
0x11-0x12 = Comando asignado a Line.
0x13-0x14 = Comando asignado a Power.

Estas direcciones son meramente explicativas pues los valores los podrán variar a traves de los menús correspondientes y otros cada vez que el amplificador es apagado, siempre y cuando el contenido de las variables es diferente al guardado en la E2Prom.

Como dije este preamplificador posee un menú escondido para poder configurar las ganancias de las entradas y el mando a distancia (Control remoto).

Con respecto a la ganancia solo se podrá ajustar la línea donde se encuentre el preamplificador al momento que fue apagado, esto indica que para ajustar cada entrada primero deberá ser seleccionada.

Al acceder al menú de IR aparecerá en el display “Press (POWER)”, en ese instante podremos presionar la tecla que nos guste para dicha función; Acto seguido aparecerá “Press (SETUP)” y repetimos el proceso hasta completar las 5 funciones del preamplificador, terminando este con este mensaje en el LCD “Configuration oK” luego de aproximadamente 3 segundos este nos volverá a “REMOTE SELECTION”.

Es importante destacar que el protocolo que utiliza es NEC, esto indica que si no cambia de un mensaje para otro después de haber presionado le botón en el IR es posible que se trate de otro protocolo.

Recuerden que para moverse dentro de cualquier menú se podrá hacer con los sw de (Vol Up & Vol Dwn); Para acceder a dicho menú así como para salir (Setup/Enter Sw).
Yo particularmente emplee un LCD de 16*2Chrs y no el de 20*2Chars pues cuando me dispuse a realizar el frente de mi amplificador este casi no me dejaba espacio para los sw, de todas formas les dejo los dos firmwares uno para cada LCD.

LCD_162.bin y LCD_162.hex para los LCD de 16*2 Chrs, así como LCD_202.bin y LCD_202.hex para el LCD de 20*2 Chrs.

Con esto doy por terminado este proyecto, espero les sirva.
En estos dias les pongo unas fotos.
Gracias a todos.
 

Adjuntos

  • Final_firmware.rar
    21.2 KB · Visitas: 1,357
Hola. Yo personalmente quiero felicitarte por este proyecto!!!! :aplauso::aplauso::aplauso:

Es un aporte espectacular! y esta muy bien desarrollado.

La verdad quedo a la espera de las fotos y tambien de que algun moderador destaque el mismo, no es un aporte para que quedeperdido en el foro.

Un abrazo y saludos

Juan Jose(y)
 
Bueno Juan Jose gracias…
Aquí le pongo unas fotos de mi amplificador a medio terminar..
Gracias a todos….
 

Adjuntos

  • HPIM6183c.JPG
    HPIM6183c.JPG
    139 KB · Visitas: 1,804
  • HPIM6185.JPG
    HPIM6185.JPG
    125.4 KB · Visitas: 1,882
Qué lindo proyecto che :aplauso:... felicitaciones y gracias por el aporte.
Lo dijeron varios ya pero lo repito, estos temas con aportes deben destacarse! no pueden perderse junto con los demás temas con consultas. Hay que darles el lugar que se merecen a este tipo de temas y pedirles un poco más de organización a los señores moderadores (y)

Al final, aportes con pcb, explicaciones, fotos, comentarios de pruebas y soporte, tienen el mismo nivel que todos los demás que se abren constantemente. (n)

Saludos
 
Última edición:
:aplauso::aplauso::aplauso::aplauso::aplauso:Bueno felicitaciones tambien yo lo repito e insto feacientemente a los moderadores a que destaquen este proyecto de audio saludos(y)
 
Gracias a todos en el foro por sus recomendaciones a que se destaque.


Para los que decidan montar este proyecto, solo les diré que poco a poco tratare de ir mejorando más el firmware, este es funcional 100 por 100 pero podemos añadir otras características y entre todos mejorar las que están.


Desde ya gracias de nuevo.
 
Gracias a todos en el foro por sus recomendaciones a que se destaque.


Para los que decidan montar este proyecto, solo les diré que poco a poco tratare de ir mejorando más el firmware, este es funcional 100 por 100 pero podemos añadir otras características y entre todos mejorar las que están.


Desde ya gracias de nuevo.

Solo por curiosidad y es que estoy iniciando un curso de programacien en C y C++.
Puedes subir el codigo fuente en un txt para ver como esta desarrollado? sin compromisos.

Tengo en mente utilizar los modulos de potencia de philps con comunicacion I2C y todos necesitan de un micro que los gestione. Por ello inicie los cursos de digital nuevamente.

Un saludos y felicitaciones nuevamente.
MUY BUEN PROYECTO.

Juan Jose(y):aplauso:
 
En cuanto migre el fuente de ASM a Basic completamente se los subo
pues la mayor parte de las subrutinas están escritas en ASM y otros pedazos en
C y sin ningún comentario.


Gracias.
 
Bueno disculpen la demora, pero es que no dispongo de mucho tiempo.
Aquí les dejo el fuente en BASIC para que lo puedan modificar a su antojo y tomen ideas de lo realizado, también he cambiado el tiempo de sampling a 64mS pues trabaja mejor el vúmetro; Al menos a la vista es una realidad pues el firmware anterior publicado hacia sampling a 128mS y para las altas frecuencias no eran apreciables por el vúmetro.
Disculpen por no poner comentarios, es cuestión de tiempo; Pero si en algo les puedo ayudar me hacen saber.
Gracias a todos por pedir que se destaque.:)
 

Adjuntos

  • Fuente.rar
    15 KB · Visitas: 845
Es simple.

Solo tienes que sostener pulsado el Sw de SETUP y pulsar momentáneamente el Sw de POWER y entraras en el menú oculto del Pre Amplificador.
Luego con los Sw de Vol+ y Vol- buscas la opción que dice en el display REMOTE SELECTION y pulsas de nuevo Set Sw y te pondrá en LCD este texto:
Press POWER
En ese instante pulsas el botón que quieras usar como Power en el Control Remoto y si el pre amplificador detecto bien el remoto pasara a otro mensaje.
Press SET/ENT
Sigues pulsando los botones que quieras utilizar para cada función hasta que te ponga el siguiente mensaje:
All oK
Luego de aproximadamente 1 segundo vuelve al menú de Remote Selection, entonces pulsas vol+ hasta que te ponga:
Exit
Entonces pulsas de nuevo Set Sw y el pre amplificador se apagara, luego después de esto ya puedes utilizar el control remoto.
Espero entiendas ahora su funcionamiento
 
Hola para todos :)

Tengo algunas dudas sobre el circuito, quisiera saber para que sirven los capacitores y las resistencias dispuestos entre las patas 16 a 29... Me fije en la datasheet, pero de todas formas no puedo entender para que sirven.

Y lo otro es el transistor Q1 que funcion cumple.

Pienso hacer el circuito pero utilizando PIC, por eso quiero entender completamente como funciona.

Muchas gracias, Marcos.
 
Atrás
Arriba