Microcontroladores: Preamplificador de audio de alta gama

Mario Sacco . Vista 88606 veces

Si tu pasión es la música y deseas ser un DJ importante, no puedes dejar pasar por alto el proyecto que te proponemos hoy: un circuito totalmente digital para manejar consolas de audio de la más alta calidad de sonido, con prestaciones increíbles, y operables tanto en forma local como remota (a través de un ordenador). Si el audio profesional es lo tuyo, te recomendamos darle una leída a este artículo y conocer esta aplicación basada en el TDA7449.


  • Entre las virtudes destacables del TDA7449 se encuentra la posibilidad de seleccionar entre dos fuentes de sonido estéreo independientes, cada una con la posibilidad de ajustarse a distintos niveles de ganancia de entrada mediante la configuración de sus registros. El TDA7449 posee, además, controles de tonos agudos y graves por pasos de 2dB, mientras que el control de volumen se puede regular por pasos de 1dB, al igual que el balance entre canales de audio. Puedes realizar todas estas maravillas de funciones con tan sólo dos cables, a través de un bus I2C, y desde un microcontrolador sencillo.

    Diagrama de bloques interno del TDA7449 Diagrama de bloques interno del TDA7449

    Para controlar y manejar nuestro preamplificador de audio utilizaremos un PIC 16F628A, un display alfanumérico de 2 líneas X 16 caracteres, y tan sólo cuatro pulsadores para todas las funciones y ajustes: uno para controlar la función ON-OFF del sistema, que también puede activar el MUTE de sonido; otro para seleccionar dentro de un menú de posibilidades (Volumen, Balance, Graves y Agudos); y los dos últimos para aumentar o disminuir los parámetros elegidos por la función MENÚ. Antes de pasar a detallar el circuito a utilizar, te dejamos algunos valores para que puedas comprobar la calidad y prestaciones del TDA7449:

    Tabla de las características más importantes del TDA7449 Tabla de las características más importantes del TDA7449

    Diagrama en bloques del sistema a implementar
    En la siguiente imagen puedes ver el diagrama en bloques de la aplicación que vamos a construir hoy. A primera vista puede resultarte algo complejo, pero a medida que avancemos en las explicaciones podrás ver que todo es muy sencillo si se trabaja de manera organizada, prudente, y prestando atención a las indicaciones que te iremos brindando.

    Diagrama del sistema a desarrollar Diagrama del sistema a desarrollar

    La Fuente de alimentación
    Si deseas utilizar un amplificador monitor, ya sea para auriculares o para altavoces de retorno, y piensas hacerlo a través del circuito propuesto con un TDA2004 (6W + 6W RMS), debes dejar (para alimentarlo) una conexión de 12 Volts, capaz de entregar 1 Amper para trabajar cómodamente y sin grandes complicaciones de disipación de calor. Luego encontrarás, en el circuito propuesto, un regulador de 9 VCC, del tipo 7809, para alimentar al TDA7449; y más adelante aún, se conecta un 7805 para obtener los 5 Volts necesarios para el PIC y el LCD.

    Esta fuente está pensada y diseñada originalmente para trabajar a partir de una batería de 12 VCC o, en su defecto, una fuente de alimentación regulada. Debido a que permite la conexión a un sistema u otro (batería o fuente conectada a la red domiciliaria), hemos colocado un diodo (D1) para evitar complicaciones en caso de error involuntario en la polaridad al momento de la conexión. Igualmente, T1 protege al sistema de un error de este tipo, lo que hace innecesario la utilización de fusibles en este punto del circuito.

    Al momento de pulsar el botón Power, D2 pondrá (a través de R2) la tensión de base del transistor T1 (trabajando como conmutador serie) a un potencial bajo para que éste (T1) comience a conducir. En ese momento, la alimentación llegará al PIC, y el programa comenzará a funcionar colocando al pin RA3 del microcontrolador en un estado alto (High) para mantener en conducción a T2 (entre Colector y Emisor). De esta forma, T1 se mantendrá en conducción mediante el potencial bajo existente en su base, dejando el circuito encendido a lo largo de todo el funcionamiento del programa y el sistema.

    El firmware cargado en el PIC estará continuamente atento a la pulsación del botón “Power ON-OFF” para controlar que exista siempre un potencial alto en RA4 brindado por R5 de 10K. A esta tarea la puede realizar el microcontrolador a través del uso del Timer0 (TMR0), o a través de una rutina controlada periódicamente para chequear el estado lógico de este pin. Si el botón llega a ser pulsado, D3 colocará al pin RA4 a un nivel lógico bajo. Esto será detectado por el firmware y provocará un salto en la rutina del programa a una secuencia de apagado con mensaje de despedida (si se desea) y un potencial bajo (LOW) en el pin RA3 para asegurar el apagado y corte de T1. Notarás que T3 (en caso de utilizarse) también pasará al corte, desenergizando el relé Rel1 y cortándole la alimentación al amplificador de audio. El circuito quedará totalmente apagado sin consumir corriente, lo que lo transforma en un sistema ideal para ser utilizado con alimentación a batería.

    Diagrama de la fuente de alimentación Diagrama de la fuente de alimentación

    Te recomendamos la instalación de un conector hembra USB, tipo “A”, en aquellos casos en los que el sistema se construya con características de portabilidad para ser utilizado, por ejemplo, en un coche. Una potencia sonora de 6W + 6W RMS no es para nada despreciable cuando no se tiene música en el vehículo. Con un buen par de altavoces y un reproductor MP3 o MP4, puedes tener buena música durante un viaje. Sobrio, disimulado, discreto, sin necesidad de mostrar cadenas de audio de primeras marcas (tentadoras para cualquier ladrón), puedes disfrutar de un sonido genial sin ostentar de manera.

    Otra parte del circuito que puede ser considerada como opcional también está en recuadro de líneas de puntos y corresponde a la alimentación del amplificador de audio cuando el sistema se completa en una unidad autónoma. Observen que la conexión al amplificador se realiza a través de un relé para garantizar un suministro de energía sin inconvenientes y eficaz. Tomando señal desde RA3, y con un sencillo transistor BC639 o equivalente, resolvemos la activación del relé, que no será de dimensiones importantes.

    Por último, cabe aclarar que es aconsejable montar esta parte del proyecto (la fuente de alimentación) en una placa separada del sistema de audio. Esta recomendación es muy útil para prevenir ruidos y zumbidos en caso de utilizar el preamplificador a partir de una fuente alimentada de la red domiciliaria, como sería el caso de la utilización dentro de una consola profesional de DJ.

    El amplificador de audio
    El amplificador que utilices para monitorear el canal de trabajo será de la calidad y potencia que tú elijas. Te servirá para conocer de qué manera, por ejemplo, sale al aire tu emisora de FM, cómo preparar un tema para efectuar una mezcla de sonido en vivo, y miles de aplicaciones más. Lo importante en todos los casos es que tú estés conforme con el resultado obtenido.

    Amplificador monitor con TDA2004 Amplificador monitor con TDA2004

    No es necesario utilizar un módulo amplificador STK4142II, ni tampoco llegar al mínimo extremo de un LM386. Un TDA2004 es una muy buena opción y puede proporcionarnos una potencia altamente satisfactoria con sus 6W RMS por canal @ 12Volts de alimentación. Debido a que no estamos presentando un artículo orientado a un amplificador de audio, no abundaremos en detalles funcionales del circuito integrado TDA2004, pero sí te dejamos su diagrama esquemático y algunas fotografías del prototipo de este amplificador terminado, junto a un diagrama tentativo del PCB. Puedes variarlo a tu gusto, conveniencia y comodidad.
     
    No es necesario ni obligatorio utilizar al TDA7449 sólo en consolas mezcladoras. También puedes construir a partir de él un sistema de audio autónomo y de la potencia que tú decidas para la aplicación que mejor te plazca, por lo que la parte de amplificación de audio final queda a tu exclusiva elección, decisión, criterio y posibilidades económicas.

    Imagen del amplificador utilizado en el desarrollo Imagen del amplificador utilizado en el desarrollo

    El TDA7449 y su técnica de trabajo
    El intercambio de datos entre el TDA7449, el microcontrolador y viceversa se efectúa a través de la comunicación serie de dos cables, conocida como protocolo I2C, del que ya hemos hablado en otro artículo y del que nos ocuparemos con mucho ahínco en NeoTeo. Este protocolo es utilizado ampliamente para conectar y operar sofisticados y elaborados dispositivos con complejas y poderosas instrucciones, a través de sólo dos líneas de conductores llamadas SDA y SCL, que llevan conectadas una resistencia de 10K a VCC cada una (resistores PULL-UP).
    Tal como hemos mencionado en otras oportunidades, el bus requiere una condición de START para iniciar una conexión de “diálogo” entre el microcontrolador y los dispositivos conectados a él. Una vez terminada la comunicación, el bus “debe” cerrarse; a esta situación se la conoce como STOP.

    Diagrama de tiempos y estados para abrir y cerrar un Bus I2C Diagrama de tiempos y estados para abrir y cerrar un Bus I2C

    Aquellos que trabajan con sistemas de programación de microcontroladores distintos al BASIC, recuerden que para generar una situación de START en el bus debe existir una transición de estado lógico alto a un estado lógico bajo en la línea SDA, mientras SCL se encuentre en estado alto. De la misma forma, para generar una detención de comunicación dentro del bus (condición de STOP), SDA debe pasar de un estado bajo a otro estado alto, mientras SCL se encuentra en estado lógico alto. En BASIC bastará con un simple BSTART y/o BSTOP para abrir o cerrar la comunicación bidireccional de datos dentro del bus.

    Luego de abrir el bus, y como en todos los casos en los que trabajamos con I2C, debemos llamar al dispositivo por su nombre o dirección, conocida esta última como “Address”, que en el caso del TDA7449 está formada por el byte: 10001000. Luego, vendrá una sub-dirección o “Sub-Address” que será la encargada de indicarle al circuito integrado cuál de todos su parámetros vamos a manipular, por ejemplo, Volumen, Graves, Agudos, etc., según nos muestra el siguiente diagrama que se encuentra en el datasheet del IC:

    Direcciones de los registros internos del TDA7449 Direcciones de los registros internos del TDA7449

    Como deja ver el cuadro, los tres primeros bits (MSB) no intervienen en la selección de los que serán luego los ajustes que realizaremos a través del menú. El bit 4, que se representa con la letra B, se utiliza para indicarle al IC que debe entrar en un lazo incremental automático hasta el final o tope de valor de la función seleccionada. Es decir, si seleccionamos la sub-dirección de variar los graves y colocamos el bit D4 en estado alto (H), el sistema ingresará en un estado incremental automático hasta llegar al tope de valor de +14dB de amplificación de sonidos graves. Si, en cambio, este bit se programa con un estado bajo, debemos enviar dato a dato para poder incrementar o decrementar el parámetro seleccionado, situación que obviamente será la que seleccionaremos para luego enviar un tercer byte con el valor que deseemos darle al ítem elegido.

    Para la elección de los datos a colocar en el tercer byte será aconsejable que imprimas las hojas del datasheet donde se expresan todas las variables posibles, y desde allí optar por la correcta sin errores. Una vez que hayas enviado el tercer byte, puedes cerrar el bus con una condición de STOP y puedes pasar a comunicarte con otro dispositivo conectado al bus o, de lo contrario, quedar a la espera de una nueva instrucción.

    A diferencia de otros circuitos integrados que permiten conectarse a un bus I2C, el TDA7449 no posee una dirección configurable dentro del bus. Es decir, sólo se permite uno por microcontrolador, y en los casos en los que nuestro deseo pase por conformar una gran consola de sonido, podemos quitar el display LCD alfanumérico, utilizar los pines que queden liberados y, a través de un par de ellos, conectarnos a una gran red RS485 de hasta 32 controles (utilizando los pines que dejarán libre el LCD). Una consola de 32 canales con la totalidad de sus controles digitalizados y con la capacidad de ser operada desde el ordenador, sin piezas mecánicas, sin fallas ni roturas… nada despreciable ¿verdad?

    Protocolo de comunicación entre elTDA7449 y el microcontrolador Protocolo de comunicación entre elTDA7449 y el microcontrolador

    Un ejemplo de programación en BASIC del TDA7449 sería la siguiente:

    • BSTART                                  ‘abro el bus
    • BUSOUT %10001000          ‘envío la dirección que llama al TDA7449
    • BUSOUT %00000000         ‘le indico que voy a seleccionar una entrada
    • BUSOUT %00000011          ‘selecciono la entrada 1
    • BSTOP                                     ‘cierro el bus

    En el listado vemos claramente definidos los byte START, CHIP ADDRESS, SUBADDRESS, DATA y STOP. Otro modo aceptado para el ajuste o “seteo” (como el del ejemplo) puede ser realizado mediante la asignación de “ALIAS” dentro de la instrucción BUSOUT. Esto se realiza a través de la instrucción SYMBOL y se aplica a las direcciones o sub-direcciones de los registros del IC que permiten modificar las características de funcionamiento del sistema. Por ejemplo: si la dirección del IC dentro del bus es %10001000, podemos colocarle un “alias” que se llame TDA, a través de la instrucción SYMBOL. El método es muy sencillo: basta con escribir SYMBOL TDA = %10001000. Luego, estos “alias” son llamados dentro del firmware de la siguiente forma:

    • SYMBOL TDA = %10001000                 ‘a la dirección la llamo “TDA”
    • SYMBOL ENTRADA = %00000000     ‘a la sub-dirección de entrada, la                                           llamo del mismo modo = “ENTRADA”
    • BSTART                                                      ‘abro el bus
    • BUSOUT TDA, ENTRADA, [%00000011] ‘envío dirección + sub-dirección + dato a registrar en la dirección especificada
    • BSTOP                    ‘cierro el bus

    Observa ahora que la instrucción viene presentada de la siguiente forma: BUSOUT Dirección, Sub-dirección, [Variable a cambiar]. Se puede realizar este tipo de selección para setear condiciones de start-up, donde los controles de menú que se encuentran a tu alcance no intervienen. Otro dato a considerar al programar el PIC es el nivel de ganancia de entrada que seleccionemos, ya que estos son datos que no cambiarán en todo el uso del sistema. Volumen, Graves y Agudos requieren otro tipo de rutinas que permiten un cambio en cualquier instante de uso y que veremos al momento de programar el PIC.

    En la próxima página nos metemos de lleno en el circuito eléctrico del TDA7449 y en la programación del microcontrolador.  Avanza a la siguiente página y no te pierdas los videos de demostración!!! Síguenos!

¿Y tú, qué opinas?

  • #1 <a href="../../foro/member.php?u=19549" target="_self">MAURICIOQ</a>
    MAURICIOQ sábado, 23 de mayo de 2009, 19:42

    ¡ hummm... ¡ I2c fantástico, este verano mi mujer me tira de casa

    ¿ que tal un medidor de luminosidad I2c ?

    Responder >> Attention Minus Plus Votos: 5 de 5
  • #2 Mho
    Mho sábado, 23 de mayo de 2009, 20:04

    Fantastico!!, sigo coleccionando. :)

    Responder >> Attention Minus Plus Votos: 2 de 6
  • #3 <a href="../../foro/member.php?u=16040" target="_self">Juan Antonio</a>
    Juan Antonio sábado, 23 de mayo de 2009, 21:42

    Lastima que sea programador de alto nivel... no tengo ni zorra de lo que es cada tecnicismo.

    Responder >> Attention Minus Plus Votos: 1 de 3
  • #4 <a href="../../foro/member.php?u=16216" target="_self">adema_jordan</a>
    adema_jordan sábado, 23 de mayo de 2009, 21:45

    Que proyecto más genial.

    Disculpen una pregunta, no sé ¿Qué es I2C?. Alguien me podria proporcionar información respecto a esto. Lo he visto en varios proyectos. Y me gustaria enterarme bien.

    Gracias

    Responder >> Attention Minus Plus Votos: -2 de 2
  • #5 OscarFMG
    OscarFMG sábado, 23 de mayo de 2009, 22:45

    En realidad me parecen geniales todos los proyectos que colocan con PICS hay tantas pequeñas cosas que se pueden hacer tan grandes, desde hacia tiempo que queria experimentar con el audio de manera digital, y aunque no es lo que tenia en mente, ya me han dado muchas ideas para comenzar a experimentar en diversas cosas de audio.

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #6 <a href="../../foro/member.php?u=16216" target="_self">adema_jordan</a>
    adema_jordan sábado, 23 de mayo de 2009, 22:54

    #4Ya encontre la información necesaria. Nos vemos

    Responder >> Attention Minus Plus Votos: 2 de 4
  • #7 Reyvolsam
    Reyvolsam sábado, 23 de mayo de 2009, 22:58

    Y como cuanto es su costo???

    Responder >> Attention Minus Plus Votos: 0 de 2
  • #8 <a href="../../foro/member.php?u=16843" target="_self">kianji</a>
    kianji sábado, 23 de mayo de 2009, 23:03

    #4=O No saber que es I2C, te invito a leer los títulos de los artículos de Mario (http://www.neoteo.com/Portada/tabid/54/sa/17807/Default.aspx) Hay varios que usan y explican y tambien conoce cosas interesante de la electrónica ^_^

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #9 Ahs
    Ahs sábado, 23 de mayo de 2009, 23:46

    yo quiero un circuito para grabar cartuchos de sega/atari 2600/snes o algo asi loco... como la R4 para consolas viejas xD pero grabadas en eproms flash o asi

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #10 Cristian
    Cristian domingo, 24 de mayo de 2009, 01:33

    AAAAAAAAAAAAA son tan buenos estos proyectos pero lastima que haun no lo puedo hacer porque no casi nada de electronica apenas conosco el ne555 y el HCF4017 y otras cositas.

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #11 Diego
    Diego domingo, 24 de mayo de 2009, 02:32

    Muy bueno, y muy buena musica, en precio argentino, cuanto gastaria en total? sumandole un 25% mas de lo que sale por los componentes q voy a romper xD

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #12 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 04:55

    #11Hola Diego!

    Respondiéndole también a Reyvolsam, el TDA7449 sale U$S3,15 (cklelectronic.com.ar)y por su parte el TDA2004 y el PIC deben andar en precios similares (yo no sé el precio actual porque ya los tenía). Un LCD debe estar en U$S 10 y la suma del resto de los componentes no debe llegar a U$S 15 por lo que en total de materiales hay menos de U$S 40 (130-140 pesos argentinos).
    Después aparte hay que contar con una fuente de alimentación y un juego de lindos baffles o altavoces.
    Vamos con fé Diego! no es complejo el asunto y si tienes precaución no romperás nada ;)

    Saludos!

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #13 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 04:59

    #1Un medidor de luminosidad ...
    Algo parecido a un Luxómetro? o un interruptor crepuscular que pueda detectar luz y oscuridad sencillamente?
    Si es lo último lo que buscas, coloca en el buscador de este sitio "Interruptor Crepuscular" y encontrarás un muy buen artículo de Ariel Palazzesi sobre el tema.

    Saludos !

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #14 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 05:01

    #6Cuando gustes KestC !

    Saludos !

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #15 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 05:08

    #10Ánimo Cristian !

    Nadie nace sabiéndolo todo.
    Conserva y guarda esta y otras notas que te interesen y con el tiempo, la dedicación y el entusiasmo puedes lograr cosas muy interesantes. TODOS aprendimos primero a caminar y mucho después a correr un poco ... no bajar los brazos y saber preguntar es el secreto.

    Saludos !

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #16 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 05:11

    #5Adelante Oscar ! éxitos en tus emprendimientos ! :))

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #17 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 05:16

    #7Hola Reyvolsam !

    Más abajo respondí tu pregunta.

    Saludos !

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #18 <a href="../../foro/member.php?u=19603" target="_self">pelimarce</a>
    pelimarce domingo, 24 de mayo de 2009, 11:48

    seria interesante un articulo de como fabricar un electroestimulador muscular ya que tambien la electronica se puede utilazar para la salud y el bienestar de uno mismo

    saludos!

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #19 <a href="../../foro/member.php?u=8" target="_self">Mario</a>
    Mario domingo, 24 de mayo de 2009, 17:51

    #18Hola crackzar !

    Anotada tu inquietud.

    Saludos !

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #20 <a href="../../foro/member.php?u=19549" target="_self">MAURICIOQ</a>
    MAURICIOQ domingo, 24 de mayo de 2009, 18:39


    Perdona tienes razón,me refiero a u luxómetro, la idea es contrarrestar el efecto del sol con un toldo o persiana motorizados.
    ¿guata o no gusta?, unido con el termómetro podríamos tener mucho juego ¿no?,¿ que os parece Mario?




    Responder >> Attention Minus Plus Votos: 0 de 0
  • « «« Anterior1234Siguiente »» »
    Cargando...Cargando...

  • nuevo comentario
    Nombre

    Campo obligatorio

    Email

    Escriba una dirección de correo electrónico con el formato sunombre@ejemplo.com.

    Campo obligatorio

 
Ir arriba