UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una...

34
UNIVERSIDAD TECNOL ´ OGICA NACIONAL FACULTAD REGIONAL BUENOS AIRES Departamento de Ingenier´ ıa Electr´ onica ecnicas Digitales 2 Procesamiento digital de audio en tiempo real MANUAL DE INGENIERIA ıaz Antu˜ na, Agust´ ın Omar [email protected]

Transcript of UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una...

Page 1: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

UNIVERSIDAD TECNOLOGICA NACIONALFACULTAD REGIONAL BUENOS AIRES

Departamento de Ingenierıa Electronica

Tecnicas Digitales 2

Procesamiento digital de audioen tiempo real

MANUAL DE INGENIERIA

Dıaz Antuna, Agustın [email protected]

Page 2: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Autor: Dıaz Antuna, Agustın Omar Pagina 1 de 33

Page 3: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Tabla de contenidos

1. Descripcion general 4

1.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2. Interfaz con el usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Conexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2. Hardware 5

2.1. Diagrama en bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2. Seleccion de componentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2.1. Microprocesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2.2. Display LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2.3. ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2.4. DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3. Circuitos esquematicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3.1. Modulo ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.3.2. Modulo DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3.3. Modulo Alimentacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3.4. SD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3.5. Adaptacion de senal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3.6. Acondicionamiento de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3.7. Acondicionamiento de salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3.8. Placa principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.4. Circuito impreso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.4.1. Placa principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.4.2. Modulo ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4.3. Modulo DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4.4. Modulo Fuente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.5. Armado y testing de la placa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3. Software 19

3.1. Programacion de los modulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1.1. ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1.2. DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.3. DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Autor: Dıaz Antuna, Agustın Omar Pagina 2 de 33

Page 4: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

3.1.4. Display LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.1.5. SD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2. Efectos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.1. Filtros lineales implementados en dominio temporal . . . . . . . . . . . . . . . 23

3.2.2. Filtros alineales implementados en dominio temporal . . . . . . . . . . . . . . . 25

3.2.3. Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.3. FreeRTOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.3.1. Tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Indice de figuras 31

Indice de scripts 33

Autor: Dıaz Antuna, Agustın Omar Pagina 3 de 33

Page 5: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

1. Descripcion general

En este manual de ingenierıa se detallara todo aquello necesario para poder llevar a caboeste proyecto.

El mismo estara dividido en 3 secciones:

• Descripcion general: Describira en forma general al proyecto, su funcionamiento, interfaz conel usuario, etc.

• Hardware: Contara con todos los aspectos relacionados a esta parte del proyecto, ya seandiagramas en bloque, esquematicos, PCB, consideraciones tomadas, problemas resueltos, etc.

• Software: Detallara tanto cuestiones relacionadas a herramientas, lenguaje, entorno de trabajo,como tambien otras inherentes al desarrollado para este sistema, como lo son las rutinas, elsistema operativo implementado, etc.

1.1. Introduccion

El proyecto surgio como trabajo integrador de la materia Tecnicas Digitales 2, dictada enla Universidad Tecnologica Nacional, Facultad Regional Buenos Aires, utilizando los conocimientosadquiridos en la misma.

Se establecio como objetivo el desarrollo de un sistema embebido utilizando el microproce-sador LPC1769 de NXP, el cual esta basado en arquitectura Cortex M3.

Teniendo en cuenta estos lineamientos y experiencias previas trabajando en el ambito delaudio digital, se propuso como proyecto, el desarrollo de un sistema de procesamiento digital de audioen tiempo real.

Utilizando herramientas de diseno detalladas en su correspondiente seccion, se realizo eldiseno tanto de hardware como de software, a partir de simulaciones y pruebas tanto preliminarescomo definitivas sobre el prototipo final, hasta conseguir un sistema funcional cumpliendo con elobjetivo propuesto.

El mismo es capaz de adquirir audio a partir de un reproductor (ejemplo: PC, equipo deaudio, etc.) y aplicar 5 efectos audibles sobre el mismo. Algunos de ellos son configurables medianteparametros que almacenados en una tarjeta de memoria SD. A su vez, el sistema cuenta con unasalida analogica que permite conectar un amplificador para escuchar el sonido procesado.

1.2. Interfaz con el usuario

A fin de encarar la interfaz con el usuario de forma simple y sencilla, se decidio utilizar unapantalla LCD de tecnologıa TFT y una botonera para facilitar al usuario el control del equipo.

Como ya se ha mencionado, algunos de los efectos son configurables mediante parametrosleıdos de una tarjeta SD.

En la misma, estan almacenados de la forma PARAMETRO:VALOR en un archivo conextension .txt que tiene el mismo nombre que el efecto al que esta asociado (ejemplo: distorsion.txt,overdrive.txt, etc). Utilizando una PC y un editor de texto, el usuario podra cambiar el valor pordefecto por el deseado.

Al momento de arranque del sistema, se cargan estos valores desde la tarjeta SD en losalgoritmos correspondientes a cada efecto. En caso de que haya algun problema durante la carga dedatos, se detecta esta condicion forzando un estado de bloqueo informado con una pantalla de error,impidiendo el procesamiento y la salida de audio del equipo.

Autor: Dıaz Antuna, Agustın Omar Pagina 4 de 33

Page 6: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

En el caso de que el acceso a la memoria SD haya sido correcto, se carga en pantalla el menude control del sistema, en el cual se pueden observar todos los efectos disponibles.

Para cambiar entre ellos, se utilizan dos botones destinados a dicha funcion, para elegir elefecto que se posiciona arriba o debajo del que se encuentra seleccionado.

1.3. Conexion

El equipo cuenta con una entrada de alimentacion aconsejada de 12VCC (continua) que sonsuministrados por cualquier transformador comercial que pueda entregar como mınimo 0,5 A.

Ademas, posee puerto mini-usb correspondiente al stick LPC1769, alimentando el debuggerdel mismo.

El ingreso y egreso de audio se realiza con jacks de audio de 3.5mm.

2. Hardware

Uno de los grandes desafıos del proyecto fue el diseno del hardware dedicado. Partiendo desdeun simple bosquejo del sistema, pasando por esquematicos, pruebas de componentes, simulaciones,pruebas experimentales, hasta llegar a la grabacion de la placa, su soldado y posterior verificacion.

2.1. Diagrama en bloques

Al momento de definir la idea fuerza, se planteo este esquema. El cual tiene como utilidad,separar el proyecto en pequenos bloques, de esta manera, se pueden dividir las tareas de desarrolloentre los integrantes del grupo y simplificar el diseno.

Entre los lineamientos del proyecto, se establece el uso del LPC1769. Como el ADC que traeintegrado tiene algunos glitches y sumandole que tiene una resolucion de 12 bits y el DAC es de 10bits, se decidio utilizar conversores externos de mayor resolucion para audio, tratando de obtener elmejor sonido posible.

Para realizar un control del sistema, se agregaron botones y un display. A su vez se establecioel uso de una tarjeta SD para modificar los parametros de algunos efectos.

De esta forma, el diagrama sobre el cual se baso este trabajo es el siguiente:

Figura 1: Diagrama en bloques

Autor: Dıaz Antuna, Agustın Omar Pagina 5 de 33

Page 7: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

2.2. Seleccion de componentes

Una vez separado el sistema en bloques, podemos identificar 4 componentes crıticos: micro-procesador, display LCD, ADC y DAC, los cuales determinaran una interfaz de comunicacion, unespacio fısico dentro del circuito impreso, ası tambien como las fuentes de alimentacion necesariaspara el sistema en sı.

2.2.1. Microprocesador

Como lineamiento del proyecto, esta establecido que el debe realizarse sobre el LPC1769, ennuestro caso REV B, de la marca NXP. Es un microprocesador de 32 bits basado en un arquitecturaCortex M3.

Cuenta con una serie de perifericos, como por ejemplo: GPIO, conversores ADC y DAC,protocolos de comunicacion SPI, I2C, I2S, UART, ademas de memoria EEPROM, debugger incluıdoen el stick, entre otras prestaciones.

Figura 2: LPC 1769 revision B de NXP

2.2.2. Display LCD

Tanto en el mercado nacional como en el internacional, pueden encontrarse un sinfın demarcas y modelos de display.

Como la funcion del display es servir de soporte al usuario al momento de querer utilizar elequipo, limitamos la busqueda a pantallas que tengan un tamano cercano a las 3 pulgadas. Debido aproblemas burocraticos en el ingreso de compras realizadas en el exterior, se recurrio al mercado local.

Por otro lado, el controlador de la pantalla y su protocolo de comunicacion terminara defi-niendo que tan difıcil sera su puesta en marcha.

Luego de evaluar las opciones de compra disponible, se eligio un display LCD de tecnologıaTFT modelo S95160 de 240x320 pixels y un tamano de 3.2”. Cuenta con un controlador ILI9341 deAdafruit para la pantalla, un driver XPT2046 para el touchscreen el cual no es utilizado.

Figura 3: Display S95160

La alimentacion es 3.3V, la misma que necesita el microprocesador.

Autor: Dıaz Antuna, Agustın Omar Pagina 6 de 33

Page 8: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

2.2.3. ADC

Como se menciono anteriormente, el ADC interno del LPC1769 tiene dos desventajas paraprocesar audio: es de 12 bits, y esporadicamente presenta un glitch en las lecturas, igualmente estoultimo podrıa resolverse con un filtro de media movil o alguna otra ponderacion de las muestras.

Por experiencias previas, se decidio implementar el PCM1802 de Texas Instruments. Es unconversor analogico digital sigma delta de 24 bits pensado para audio ya que tiene dos entradas paratomar audio estereo.

Se comunica por interfaz PCM permitiendo distintos formatos, de los cuales utilizaremos elI2S de Philips ya que el LPC1769 tiene un periferico dedicado.

El conversor se configura por hardware, con pines que estan destinados a tal fin. Permiteconfigurar:

• Power down: Apagar o no el dispositivo.

• Bypass: El comportamiento del filtro de bypass, el cual permite o no pasar la componente decontinua de la senal de entrada.

• Oversampling: Controla el modulador del delta-sigma.

• Data format: Selecciona el formato de audio.

• Interface: Elegir entre modo maestro o esclavo en la comunicacion I2S.

La frecuencia de muestro maxima es 96 KHz. A partir de la misma se calculan las quecorresponden a la interfaz de audio, siendo todas multiplos de ella.

Requiere alimentacion de 5V y de 3.3V, para la parte analogica y digital respectivamente.

2.2.4. DAC

Una vez seleccionado el ADC nos dedicamos a buscar un DAC con caracterısticas similares.Dentro de la misma familia de conversores para audio de Texas Instruments, elegimos el PCM1781.

Al igual que el PCM1802, es de 24 bits sigma delta. Esta orientado a la salida de audio.Cuenta con dos canales de salida estereo para tal fin.

Tiene una interfaz de audio PCM para la comunicacion con el microprocesador. Entre losdistintos formatos disponibles, se opto por I2S al contar con el periferico integrado en el LPC1769.

Dentro de la familia PCM178X, el 1781 es el unico que se configura por hardware con lossiguientes pines:

• Data format: Selecciona el formato de la comunicacion PCM de audio.

• De-Emphasis: Permite habilitarlo o no para cierta frecuencia.

• Mute: Deshabilita la salida de datos.

La alimentacion es de 5V.

2.3. Circuitos esquematicos

Una vez realizada la seleccion de los componentes a utilizar y de adquirir aquellos conside-rados mas crıticos, se propuso realizar una placa compuesta por modulos.

Autor: Dıaz Antuna, Agustın Omar Pagina 7 de 33

Page 9: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

De esta forma podrıa llegar a reutilizarse, no solo componentes, si no tambien la placaprincipal, trabajando con distintos conversores. Ademas, resolverıa la metodologıa de trabajo duranteel desarrollo del proyecto, facilitando las pruebas que se realizarıan sobre sus respectivos modulos yun protoboard para realizar las conexiones con el microprocesador.

Teniendo en cuenta esta decision, separaremos el proyecto segun sus modulos para abordarlos circuitos realizados en cada caso:

• Modulo ADC

• Modulo DAC

• Modulo Alimentacion

• Placa principal

Para el desarrollo de esta parte del proyecto, se utilizo el programa Altium en distintasversiones debido al avance realizado entre distintos integrantes del proyecto.

2.3.1. Modulo ADC

Para el modulo correspondiente a este conversor, se utilizo el esquematico provisto por lahoja de datos del fabricante Texas Instruments. A dicho circuito se colocarıa en una placa con 16pines que se conectarıa en la placa principal por encima del circuito de adaptacion correspondientebuscado reducir espacio.

Figura 4: Esquematico PCM1802 obtenido del datasheet de Texas Instruments

Como se menciono anteriormente, la configuracion del conversor es por hardware. Los pinesse configuraron de la siguiente manera:

Autor: Dıaz Antuna, Agustın Omar Pagina 8 de 33

Page 10: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

• Power down (PDWM): VDD. El conversor esta siempre encedido. Debido a la complejidadde le routeo, se decidio dejarlo prendido en todo momento, como su consumo es muy bajo, noimplica un problema.

• Bypass (BYPAS): AGND. No es necesario realizar conversiones de valores de continua.

• Fsync (FSYNC): VDD. Para este proyecto, la conversion es continua. No valıa la pena com-plicar el routeo conectandola a un pin GPIO que la habilite.

• Oversampling (OSR): AGND. En nuestro caso es indistinto el valor de oversampling.

• Data format (FMT1 - FMT0): AGND-VCC. Para trabajar con el formato I2S de Philips.

• Interface (MODE1 - MODE0): AGND-AGND. Selecciona al dispositivo como esclavo du-rante la comunicacion con el microprocesador.

El resto de los pines corresponden a la alimentacion y son de comunicacion LRCK, BCK,DOUT y SCKL se conectan al microprocesador.

Teniendo en cuentas estas consideraciones se realizo el siguiente esquematico.

Figura 5: Esquematico del modulo del ADC

2.3.2. Modulo DAC

El conversor digital analogico sigue los mismos lineamientos que el ADC. Una pequena placaque incluye el circuito recomendado en la hoja de datos con conexion a la placa principal.

La conexion de los pines fue la siguiente.

• Data format (FMT): AGND. Seleciona comunicacion de 24 bits con formato I2S.

• De-Emphasis (DEMP1 - DEMP0): AGND-AGND. Sin de emphasis, no hace falta.

• Mute (MUTE): AGND. No vale la pena complicar el routeo de la placa para pausar la con-version.

• Zero mute control (ZEROA): No esta conectada. Nuevamente se priorizo el diseno de laplaca, en este caso, ante la deteccion de algun error en la comunicacion, algo que no ha ocurridodurante las pruebas y desarrollo del equipo.

• NC y TEST: No deben conectarse segun el datasheet del conversor.

El resto de los pines corresponden a la alimentacion, a la salida analogica y a la comunicacionI2S (LRCK, BCK, DOUT y SCKL) los cuales se conectan al microprocesador.

Teniendo en cuentas estas consideraciones se realizo el siguiente esquematico.

Autor: Dıaz Antuna, Agustın Omar Pagina 9 de 33

Page 11: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 6: Esquematico PCM1781 obtenido del datasheet de Texas Instruments

Figura 7: Esquematico del modulo del DAC

2.3.3. Modulo Alimentacion

Siguiendo el concepto de modulos individuales que puedan ser reutilizados, se diseno el corres-pondiente para la alimentacion. En el mismo se encuentran los reguladores necesarios para entregarlea la placa las tensiones necesarias a partir de un transformador comercial de 220VAC - 12VCC. Elconsumo no supera los 300 mA.

Debido a problemas realizando el esquematico del LPC1769, una mala lectura del mismo,provoco una confusion en la interpretacion de la alimentacion necesaria. Por lo tanto, se agrego a laplaca un regulador de 3.3 V que no tiene uso.

Dicho modulo tiene una etapa de proteccion y dos reguladores. Se utilizo un regulador swit-ching de 5V, el LM2575. Para los 3.3V, el LM1117 con un encapsulado SMD.

Autor: Dıaz Antuna, Agustın Omar Pagina 10 de 33

Page 12: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 8: Esquematico del circuito de proteccion

Figura 9: Esquematico del circuito del regulador LM2575

Figura 10: Esquematico del circuito del regulador LM1117

2.3.4. SD

El circuito correspondiente a la SD es muy simple, se obtuvo a partir de placas sobre las cualesya se ha trabajado anteriormente, principalmente la placa de desarrollo LPCXpresso Base Board parael LPC1769.

El unico problema encontrado al realizar la placa, fue una lınea de alimentacion que no fuerouteada por una mala interpretacion del esquematico de referencia, la misma se resolvio con un sutilpuente.

Autor: Dıaz Antuna, Agustın Omar Pagina 11 de 33

Page 13: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 11: Esquematico correspondiente al lector de memoria SD

2.3.5. Adaptacion de senal

El sistema esta pensado para tomar audio a partir de cualquier otro medio, ya sea un celular,computadora, equipo de audio o inclusive una guitarra, siempre y cuando tenga una salida que puedaconectarse a algun cable con salida jack de 3.5 mm mono o estereo.

Esta senal, tiene una amplitud que depende del volumen dado por el medio reproductor.Empıricamente, realizando varias mediciones de esta senal, a maximo volumen (de una computadorao celular) tiene una amplitud de 1V pico a pico. Sabiendo esto, se tuvo que disenar una etapa defiltrado analogico acondicionando la entrada para que sea tomada por el conversor analogico digital.

Una vez procesado el audio, al salir del DAC, lo hace con una amplitud proporcional a lade entrada afectada por el calculo al que fue expuesto para alcanzar el efecto sonoro. Por tal motivo,su amplitud no es constante, pero se mantiene dentro de los valores aceptados por un amplificador,permitiendole a este ultimo, mediante el control propio de volumen, alcanzar el deseado por el usuario.

2.3.6. Acondicionamiento de entrada

El conversor permite configurar los valores de referencia entre los cuales realiza el muestreode la senal. Siguiendo el circuito recomendado por el fabricante en la hoja de datos, fija estos valoresde tension en 0V(GND) y 5V(Vcc). Por lo tanto, hay que montar la entrada en un valor de continuaigual a 2.5V (Vcc/2) para que el ADC pueda convertir la parte negativa de la senal.

Como el filtro antialias esta incorporado dentro del conversor, la etapa de acondicionamientosolo debe levantar la senal. Para lo cual se calculo un circuito activo con una topologıa de sumador.

En primer instancia se propuso el siguiente circuito, el cual fue agregado en el impreso final.

Figura 12: Esquematico del circuito de acondicionamiento de entrada

Autor: Dıaz Antuna, Agustın Omar Pagina 12 de 33

Page 14: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Una vez con la placa impresa y soldada, nos encontramos ante un problema no menor: elcircuito no se comportaba de la misma forma que en la simulacion.

El operacional elegido, fue el TL072, al alimentarlo de forma single suplay, recortaba la partenegativa de la senal. Como incorporar otro regulador para tener una fuente partida era demasiadocomplicado en esta etapa del proyecto, evaluamos la posibilidad de utilizar algun operacional quepueda utilizarse con la alimentacion dada. Revisando otros opamp, llegamos al LM358, que luego deser probado con exito en placas experimentales, fue el reemplazo del anterior en la placa final.

Probando el nuevo operacional, encontramos algunos errores en la topologıa: observamosque el potenciometro y el capacitor del RC a la salida afectaban la ganancia del filtro, por lo tanto,probando simulaciones en el programa LTSpice se decidio removerlos, mejorando la respuesta del filtrohacia el comportamiento deseado.

Por otro lado, al no agregar un capacitor de desacople en la entrada, el valor de continua sereflejaba en el medio encargado de excitar el circuito pudiendo danarlo.

Para solucionar estos problemas se realizaron algunas modificaciones en el circuito, tratandode utilizar la placa ya realizada.

Figura 13: Circuito propuesto en LTSpice

Figura 14: Circuito final en LTSpice derivado del anterior

Autor: Dıaz Antuna, Agustın Omar Pagina 13 de 33

Page 15: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Para medir la respuesta en frecuencia del circuito, utilizamos un analizador de audio U8903Ade Agilent obteniendo el siguiente resultado:

Figura 15: Respuesta en frecuencia real del circuito de entrada

Notar que la frecuencia de corte del filtro pasabajos implementado ronda los 30 KHz, sirvecomo filtro anti alias, igualmente el PCM1802 ya tiene uno integrado.

2.3.7. Acondicionamiento de salida

Teniendo en cuenta que el conversor digital analogico no tiene integrado un filtro pasabajospara ”suavizar”la senal y recortar los saltos de alta frecuencia entre cada paso de tension de salida,se diseno uno utilizando una topologıa Multiple Feedback con una frecuencia de corte de 32KHz,atenuando la entrada 5 veces, ya que la misma tiene una amplitud de salida de 5V pico a pico ydeberıa ser de 1V (como se menciono anteriormente por pruebas experimentales).

Figura 16: Esquematico del circuito de salida implementado

Se utilizaron operacionales TL072 como los empleados para la etapa del ADC. Al probarlo

Autor: Dıaz Antuna, Agustın Omar Pagina 14 de 33

Page 16: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

en la placa ya soldada y realizar mediciones sobre el circuito, el mismo no funciono, atenuaba endemasıa. Se probo uno de los canales con el operacional LM358 teniendo los mismos resultados. Luegode probar modificando valores de resistencias que afectan directamente la etapa de ganancia, se optopor simplificar el circuito con un pasabajos RC buscando una frecuencia de corte de 32KHz.

Figura 17: Esquematico del filtro RC implementado

La respuesta real del filtro obtenida con un analizador de audio U8903A de Agilent fue lasiguiente.

Figura 18: Respuesta en frecuencia real del circuito de salida

2.3.8. Placa principal

Teniendo en cuenta las secciones antes explicadas, la placa principal responde al siguienteesquematico del LPC1769. A parte, no se agregaron a este manual, los correspondientes a los botonesy los leds, los mismos se encuentran en la documentacion adjunta para no cargar mas de imagenescon circuitos clasicos.

Autor: Dıaz Antuna, Agustın Omar Pagina 15 de 33

Page 17: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 19: Esquematico de la main board

2.4. Circuito impreso

Todo el desarrollo de hardware involucrado en el proyecto se realizo con la herramientaAltium, con la misma se realizo el routeo de todas las placas.

Los modulos se han resuelto en una sola cara, pero la placa principal, debido al poco espaciodisponible debio realizarse en doble faz.

2.4.1. Placa principal

Figura 20: Vista top de la placa principal

Autor: Dıaz Antuna, Agustın Omar Pagina 16 de 33

Page 18: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 21: Vista bottom de la placa principal

2.4.2. Modulo ADC

Figura 22: Vista top del modulo del ADC

2.4.3. Modulo DAC

Figura 23: Vista top del modulo del DAC

Autor: Dıaz Antuna, Agustın Omar Pagina 17 de 33

Page 19: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

2.4.4. Modulo Fuente

Figura 24: Vista top del modulo de la fuente

2.5. Armado y testing de la placa

Para grabar el circuito, se consideraron dos opciones, realizarla de forma tradicional, planchando-la sobre placas ya sea de pertinax o epoxi, o grabandola mediante un proceso de revelado fotosensible.

Debido a buenas experiencias con este ultimo procedimiento, se opto por el mismo para reali-zar todas las placas. La buena definicion era indispensable en modulos tales como los correspondientesa los conversores, debido a los pequenos encapsulados SMD de los mismos, tratando de facilitar elsoldado de los mismos.

Teniendo en cuenta estas consideraciones, se utilizaron placas fotosensibles positivas, debidoa que el proceso provoca una insolacion que tiene en el peor de los casos a afinar las pistas (en vezde ensancharlas como en el caso negativo), esto conlleva un mayor costo, pero permite una mayorresolucion.

El armado de la placa se realizo utilizando componentes adquiridos en el mercado nacional,seleccionados dentro de los catalogos disponibles en casas de electronica.

El proceso de testing de la misma fue lo mas arduo del desarrollo de hardware involucrado.Durante esa etapa se encontraron problemas de todo tipo en cuanto al diseno de los circuitos, sobretodode los esquematicos. Principalmente debido a falta de experiencia en el desarrollo de este tipo deproyectos.

Ya se ha mencionado anteriormente los inconvenientes encontrados en las etapas de acondi-cionamiento de senal tanto de entrada como de salida, los mismos se han tratado de resolver de lamanera menos invasiva a la placa, tratando de no danarla debido al costo del proceso de fabricacion.

Por otro lado, los problemas con el circuito de la tarjeta SD fueron menores, simplemente lalınea de alimentacion que no fue routeada por faltar en el circuito esquematico.

En cuanto a los botones, ha habido problemas ya que no se tuvo en cuenta la relacion entre el

Autor: Dıaz Antuna, Agustın Omar Pagina 18 de 33

Page 20: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

esquematico y el boton fısico, se conectaron a VCC y DGND las patas que estan unidas internamente.Esto se soluciono facilmente removiendo la pata que va directo a masa y conectando alguna de la lıneaopuesta.

El ultimo problema en detectarse estaba relacionado con la fuente y el esquematico delmicroprocesador. Como se menciono anteriormente, por un error de interpretacion al leer la hoja dedatos se coloco en el pin de alimentacion externa, 3.3V en vez de 5V. La forma mas sutil de arreglareste inconveniente con la placa ya realizada, fue retirando el pin en cuestion del stick del LPC1769 yconectando con un punta a la alimentacion de 5V, dejando sin efecto la alimentacion 3.3V.

3. Software

El sistema cuenta con un software que es ejecutado sobre el microcontrolador LPC1769.

Para el desarrollo del mismo se utilizo el lenguaje de programacion C y se trabajo sobre laIDE LPCXpresso desarrollada por el fabricante del microcontrolador, NXP. Esta interfaz de desarrollopermite no solo generar un archivo ejecutable por el micro, si no tambien debuggearlo para comprobarsu funcionamiento.

A parte de la IDE, NXP, provee una librerıa propia, LPCOpen, de drivers y middleware, conlas cuales se desarrollaron ejemplos de codigo para distintos perifericos y para cada microcontroladorde la lınea LPC.

Para el procesamiento digital se utilizo la librerıa dedicada DSPCMSIS de CMSIS paraCortex M3. La cual cuenta con una extensa cantidad de funciones matematicas optimizadas para elcore a utilizar. Para este proyecto se eligio la version 3.20, la mas reciente para el LPC1769.

El programa contara con un sistema operativo en tiempo real de libre acceso, FreeRTOStambien dedicado para el MCU utilizado.

3.1. Programacion de los modulos

Como se menciono anteriormente, los componentes crıticos”del proyecto se eligieron porexperiencias previas propias y de varios colegas, pero no habıamos utilizado ninguno con este micro-controlador, por ello se debio desarrollar un software desde cero, basandose en ejemplos encontradosen distintos foros de desarrolladores o dentro de los ofrecidos por el fabricante.

Para simplificar el desarrollo, se fueron probando los modulos individualmente, haciendocrecer el codigo a medida que se lograba hacer funcionar cada componente.

Una vez elegida esta forma de encarar el proyecto, podemos darnos cuenta que el cuello debotella del sistema esta en el flujo de senales, entrada y salida de audio. Por lo tanto partimos de laadquisicion del mismo.

3.1.1. ADC

Como primer medida, se busco garantizar el funcionamiento del conversor. Ya que segun laconfiguracion elegida, el mismo va a realizar la conversion constantemente, siempre y cuando recibalas senales de comunicacion con el micro de forma correcta.

El protocolo que utiliza es el I2S de Philips. El mismo establece una comunicacion half-duplex, maestro-esclavo, mediante 3 hilos pensado para audio. Con la posibilidad de agregar un 4segun haga falta (no disponible en este MCU).

• Word Select: Senal cuadrada a la frecuencia de muestreo (fs) deseada, la cual separa la in-formacion de cada canal, en una palabra para el izquierdo y otra para el derecho, los cualesconforman un sonido estereo.

Autor: Dıaz Antuna, Agustın Omar Pagina 19 de 33

Page 21: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

• Bit clock: Esta senal se encarga de marcar cada uno de los bits de cada canal. Por lo tanto, sufrecuencia dependera no solo de la fs utilizada, si no tambien de la cantidad de bits que tendracada palabra, si cada palabra fuese de 32 bits, entonces la senal tendra una frecuencia de 64*fs.

• Serial data: Por este canal se enviara cada uno de los bits de las palabras de cada canal,siguiendo el clock establecido por la senal anterior.

• Master clock: Como cualquier sistema digital, requiere una senal de clock que le permitafuncionar. El protocolo permite que uno de los dos dispositivos le brinde al otro una senal quefuncione como clock del mismo. Esta debe ser multiplo de fs.

Figura 25: Senales de la comunicacion I2S

LPCOpen cuenta con ejemplos de la mayorıa de los perifericos disponibles en cada MCU. Laultima version de esta librerıa no posee ningun ejemplo del I2S, por lo tanto tuvimos que basarnosen uno anterior (el cual utiliza funciones que han cambiado en la ultima actualizacion) y en el usermanual del LPC1769.

El periferico cuenta con dos canales uno para transmision y otro para recepcion. En este casoconfiguramos el ultimo para recibir los datos obtenidos con el conversor analogico digital.

La librerıa utilizada cuenta con un modo de inicializacion utilizando una estructura sencillaque se pasa como parametro de otras funciones encargadas de escribir los registros correspondientes.

En dicha estructura se establece la frecuencia de muestreo, la cantidad de canales y la longitudde la palabra.

Utilizandola configuramos el canal I2S TX. La funcion que se encarga de esto tiene conflictoscon la habilitacion del master clock. Por lo tanto se tuvo que modificar esta funcion, agregando estaconfiguracion al escribir el registro directamente.

Ademas para que funcione en conjunto con el DMA, se tiene que habilitar la interrupcion delcanal, pero no habilitarla en el NVIC, a menos que queramos trabajarlo tomando cada nueva muestra.

Como se menciono anteriormente, las frecuencias de las lıneas de comunicacion son multiplosde la frecuencia de muestro. Como dichas frecuencias son generadas a partir del clock del periferico, sedebe guardar la relacion de multiplicidad entre todas. Por tal motivo, luego de realizar varias pruebasexperimentales y a partir de los calculos necesarios para obtener la frecuencia del master clock, seestablecieron las siguientes frecuencias.

• Frecuencia del periferico I2S: 96 MHz

• Word select (fs): 32 KHz

• Bit clock: fs*64 = 2.048 MHz

Autor: Dıaz Antuna, Agustın Omar Pagina 20 de 33

Page 22: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

• Master clock: fs*384 = 12.288 MHz

A pesar de que la frecuencia de muestreo podrıa ser 44.1 KHz o 48 KHz para obtener unamejor calidad de audio, con dichos valores, el resto de las frecuencias no se podıan conseguir con unabuena precision, principalmente el master clock, sin el cual el conversor no funciona y el cual debetener un sincronismo con el resto de las senales.

Utilizando estos parametros, se obtuvieron datos utilizando una rutina de interrupcion delI2S.

Para terminar de garantizar el funcionamiento del ADC, se configuro el DAC interno delLPC 1769 (el cual es de 10 bits) para poder visualizar el resultado de la conversion.

Este conversor digital analogico se configura muy facilmente, ya que al trabajarlo dentro dela rutina de interrupcion del ADC solo hay que enviarle el dato a convertir.

Tratando de comprobar el funcionamiento con este loopback, se tuvo que adaptar el datorecibido para poder sacarlo.

Como el PCM 1802 es de 24 bits, y el periferico del LPC 1769 solo trabaja con palabras de16 o 32 bits, se eligio la ultima opcion. El protocolo establece que los datos se transmiten con el bitmas significativo primero (MSBF) segun lo que marca word select. Por lo tanto, como la senales soncomandadas por el dispositivo master, el esclavo (ADC en este caso) comienza a transmitir el canalcorrespondiente y luego completa con ceros si no detecta un cambio en word select.

Teniendo en cuenta el formato de la transmision, para realizar el loopback, se tomaron los 10bits mas significativos de cada palabra y se nego el bit mas significativo, quitandole el signo, ya queel PCM 1802 entrega datos en complemento a 2 (CA2) y el DAC interno del microcontrolador deberecibirlos como magnitud.

3.1.2. DAC

Una vez que se finalizo la puesta en marcha del ADC, se busco desarrollar un codigo parasacar los datos a traves del PCM 1781.

El protocolo de comunicacion es el mismo, el I2S de Philips. La inicializacion del perifericoes igual, solo que esta vez corresponde al canal de transmision.

Como el problema encontrado en la funcion de configuracion de LPCOpen para este perifericoes la misma. Se soluciono de igual manera que el otro canal.

En cuanto a las frecuencias de las senales, revisando la hoja de datos del componente, podıanser las mismas que las usadas en el canal de recepcion, lo que se logro sin mayores problemas.

A pesar de esto, hubo un inconveniente propio del microprocesador. Se han comercializadodistintas revisiones del LPC 1769. El proyecto se ha desarrollado con rev B y rev C, con esta ultima,se encontro un problema en la frecuencia de las lıneas de comunicacion del canal de TX del perifericoI2S, las mismas no eran constantes, oscilaban cerca del valor deseado, lo que provocarıa una desincro-nizacion entre ellas que dejarıan al DAC sin poder convertir. Por tal motivo, se opto por continuar elproyecto en LPC 1769 rev B.

La forma mas sencilla de probar la salida de datos es generando una senal triangular medianteuna variable que incrementa su valor cada cierto tiempo. Esta prueba manejando al periferico medianteinterrupciones pudo realizarse sin problemas, permitiendo continuar con el proyecto.

3.1.3. DMA

Una vez probados los conversores, se busco manejarlos de una forma mas inteligente, apro-vechando los recursos del microcontrolador y permitiendole realizar procesamiento digital.

Autor: Dıaz Antuna, Agustın Omar Pagina 21 de 33

Page 23: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

El LPC 1769 cuenta con un DMA (Direct Memory Access), un periferico encargado derealizar manejos de memoria que originalmente deberıa realizar el microprocesador. De esta forma, sepodrıa manejar el flujo de datos de una forma mas eficiente.

La idea serıa controlar el flujo mediante dos buffers, uno destinado a la senal recibida por elADC y otro para la senal ya procesada de la que se encargara el DAC de sacarla al mundo analogico.Ahorrandole tiempo de procesamiento al MCU para que pueda realizar el procesamiento.

Entonces, se busco configurar al DMA para que se encargue de tomar cierta cantidad demuestras e interrumpa al MCU para que pueda procesarlas, el cual al haber realizado esa tarea, ledira a este periferico que las saque por el DAC.

La inicializacion y configuracion del periferico se realizo utilizando funciones provistas porLPCOpen.

Como no habıa ejemplos muy claros de esta librerıa, el codigo se baso en la hoja de datosdel LPC 1769 y realizando varias pruebas.

La inicializacion consiste en pedir un canal al DMA para el RX y otro para el TX de I2S. Comola transmision debe realizarse desde un periferico a memoria y viceversa, se utilizaron descriptores, loscuales indican como se realizan las transferencias, especificando cual es el origen, el destino, la cantidadde muestras y de que forma se controlara la misma. Esta configuracion se realizo mediante el uso defunciones de LPCOpen, una de las cuales tenıa un error, ya que el acceso a DMA esta organizadosegun el periferico con el cual debe interactuar segun un ındice propio, el cual era sobreescrito con unvalor erroneo dentro de esta funcion.

Una vez detectado y resuelto este inconveniente, se pudo probar un loopback utilizando losconversores externos utilizando de forma mas eficiente las herramientas disponibles del MCU.

3.1.4. Display LCD

Una de los mayores inconvenientes fue encontrar la documentacion correspondiente al displayutilizado ya que el vendedor no pudo proveerla.

Luego de una intensa busqueda por la web, ya que el modelo del display no era comun y tieneuna disposicion de pines distinta a la del resto de display que utilizan el mismo controlador, se encon-traron las hojas de datos y esquematicos correspondientes. Con los mismos una librerıa desarrolladapor el fabricante que solucionaba el acceso al driver del display.

La comunicacion es en paralelo utilizando datos de 16 bits manejados mediante 5 senales decontrol que indican si la palabra transmitida corresponde a una direccion a un comando o a un dato.

El unico problema encontrado con las mismas, fue con las funciones encargadas de transmitirlos datos, las cuales recibıan char de 8 bits a los cuales se les pasaba un tipo de dato de 16 bits, por lotanto se recortaba el mismo y no se transmitıa nunca utilizando todos los pines destinados para dichafuncion.

Una vez resueltas este inconveniente, se pudo probar con exito el funcionamiento del displayy armar un menu para interactuar con el usuario.

3.1.5. SD

Para controlar la lectura de la tarjeta SD se utilizaron ejemplos de manejo de este tipo dememorias que estan basados en la librerıa de FatFs, un modulo generico del File System FAT.

La misma se pudo implementar sin problemas utilizando las APIS de esta librerıa, que seasemejan al manejo de archivos de la librerıa stdio de C con la cual ya estabamos familiarizados.

La comunicacion con la tarjeta de memoria se realiza a traves del protocolo SPI el cualfunciono sin problema utilizando las funciones de acceso brindadas por LPCOpen.

Autor: Dıaz Antuna, Agustın Omar Pagina 22 de 33

Page 24: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

3.2. Efectos

Dentro de los efectos utilizados habitualmente en la edicion de audio, mezcla en vivo o deestudio de grabacion, se pueden dividir los mismos en dos grandes grupos que albergan subdivisionesa saber:

Procesados en dominio temporal, donde se trabaja con muestras pasadas, informacion en am-plitud y deformaciones controladas de la senal.Dentro de este conjunto es que nos basaremos en el desarrollo propuesto.

Procesados en dominio frecuencial, donde se utiliza el espectro mediante transformada de Fouriery sus derivados (densidad espectral de potencia, periodograma, metodos de Welch y Barlett) afin de modificar el contenido frecuencial de la informacion.Esta metodologıa de trabajo presenta 2 problemas fundamentales en procesadores no dedicadosal procesamiento (DSP). Primeramente, el pasaje al dominio espectral requiere gran cantidadde computos los cuales pueden dificultar el procesamiento en tiempo real. En segundo lugar, serequiere mucha memoria para guardar resultados intermedios.

Bajo estos conceptos, se decide utilizar efectos en tiempo, comprendiendo que aquellos queutilicen muestras pasadas podran tener efectos de filtrado frecuencial. De esta manera se implementaraun set de 5 efectos que fueron seleccionados de los distintos trabajos que hemos presentado bajo latutela del grupo de investigacion y desarrollo Audio DPLab.

3.2.1. Filtros lineales implementados en dominio temporal

Se entiende por filtros lineales a aquellos que componen la salida mediante muestras actualesy pasadas acumuladas en una linea de demora, afectadas por constantes. En este tipo de efectospresentaremos las ecuaciones caracterısticas y sus diagramas en bloques a los efectos de simplificar lacomprension de los mismos.

Eco Se puede partir del efecto fısico que ocasiona este fenomeno a fin de desarrollar el algoritmo.Primeramente puede pensarse una cavidad natural de dimensiones considerables (solo para pen-sar en un efecto notorio), allı, alguien que ocasione un sonido escuchara el sonido presente juntoa una o varias reflexiones sonoras del mismo y reflexiones de la combinacion de los anteriores.

Figura 26: Efecto eco

La imagen ilustra el fenomeno sonoro y permite inferir que, en primer lugar, debera estar presenteel sonido actual (o muestra actual) y sonidos retardados los cuales podran ser retardos de lafuente sonora misma, o de las reflexiones.

Es aquı donde se aprovechan las tecnicas de filtrado conocidas (FIR e IIR).

El eco considerado como un filtro FIR, se entendera como aquel que presentara a la salida laentrada actual y la misma retardada un cierto tiempo (o cierta cantidad de muestras anterioresguardadas en la linea de demora).

En el diagrama se puede apreciar la interpretacion del efecto sonoro en conjunto con la ecuacionque lo gobierna.

Autor: Dıaz Antuna, Agustın Omar Pagina 23 de 33

Page 25: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Figura 27: Filtro FIR

El eco considerado como un filtro IIR, se entendera como aquel que presentara a la salida laentrada actual y la salida retardada un cierto tiempo (o cierta cantidad de muestras anterioresguardadas en la linea de demora).

Figura 28: Filtro IIR

En el diagrama se puede apreciar la interpretacion del efecto sonoro en conjunto con la ecuacionque lo gobierna.

Es este ultimo el que utilizaremos, dado que la apreciacion auditiva es mejor dado que losretardos se iran extinguiendo de a poco en un tiempo dado.

Reverberancia

Al igual que el eco, la reverberancia tiene como fundamento algorıtmico un fenomeno fısico.Pensando en una habitacion, y un locutor cercano a una de las paredes, el mismo se oira a simismo y pequenos ecos provenientes de la reflexion del sonido contra las 4 paredes, el techo y elpiso.

Figura 29: Efecto reverberancia

Autor: Dıaz Antuna, Agustın Omar Pagina 24 de 33

Page 26: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Para el algoritmo se considera de importancia sonora, solo la reflexion contra las paredes delfrente y laterales, por lo que se llega a la ecuacion:

y[n] = x[n] + g · x[n−M1] + 2g · x[n−M2] (1)

Siendo M1 y M2 constantes de retardo para modificar el efecto dimensional del cuarto y gatenuacion contra saturacion.

Flanger

Este efecto tiene el mismo principio de funcionamiento que el eco FIR, a diferencia que estetoma retardos variables comandados por una senal de baja frecuencia (LFO) armonica.

Figura 30: Efecto flanger

Siendo LFO (Low Frecuency Oscillation) de la forma cos(2πft), con f en torno a 1 Hz, quedandola ecuacion:

y[n] = x[n] + k · x[n−M − cos(2πft)] (2)

Tambien debe existir un retardo fijo para compensar la excursion negativa del coseno.

3.2.2. Filtros alineales implementados en dominio temporal

Este tipo de efectos se rigen por ecuaciones no lineales, las cuales, por tratar la senal solocon informacion actual, conlleva una deformacion controlada de dicha senal a la salida. En particular,nuestra propuesta es imitar las distorsiones por efectos de alinealidad de los componentes de losamplificadores valvulares.

Distorsion por amplitud

Esta distorsion se provoca al llegar a un limite de amplitud pico a pico de la entrada, al sobrepasareste limite, el efecto impondra el valor maximo propuesto.

Figura 31: Recorte por amplitud

Como se aprecia en el espectro, esta resulta una distorsion armonica.

Autor: Dıaz Antuna, Agustın Omar Pagina 25 de 33

Page 27: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Distorsion por emulacion de valvula termoionica

La valvula termoionica presenta diferentes caracterısticas respecto a su variedad (diodo, triodo,pendodo, etc.), en este caso presentaremos la emulacion de un pentodo.

Figura 32: Valvula

Trabajando sobre la parte central de la curva se logra solo amplificacion, al llegar a los extremos(mediante mayor amplitud de entrada) provocara un alisado de los picos de la senal de entradalo cual introduce armonicos impares a la senal.

Dado que el efecto es termico en la valvula, en la algoritmia se implementa una funcion desimilares caracterısticas, en este caso, por sonoridad se utiliza la ecuacion partida:

y[n] =√k · x[n] ; si x[n] > 0 (3)

y[n] = −√−k · x[n] ; si x[n] =< 0 (4)

Lograndose la curva:

-1 -0.5 0 0.5 1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

Figura 33: Distorsion valvula

La cual si bien no logra una respuesta sonora identica, logra el efecto distorsivo.

3.2.3. Algoritmos

Aquı se detallan los algoritmos utilizados para lograr los efectos audibles. Como se mencionoanteriormente, el DMA nos entrega paquetes de a 8 muestras tomadas del ADC, las mismas son

Autor: Dıaz Antuna, Agustın Omar Pagina 26 de 33

Page 28: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

procesadas en cada una de estas funciones, por lo tanto todas reciben como parametros, los punterosde los bloques de memoria de entrada y salida (correspondientes al ADC y DAC respectivamente)junto al valor de longitud de los mismos, para poder recorrer estos vectores y aplicar el algoritmodeseado.

Tener en cuenta que la mayorıa de los efectos que implican una suma sufren de dos desplaza-mientos, esto se debe a que el ADC coloca la informacion en los 24 bits mas significativos, por lo tantopara operar sin sufrir un overflow, se desplaza a las muestras 8 veces permitiendo un mejor manejoaritmetico.

• Distorsion: La misma se logra por recorte, a partir de un determinado valor de amplitud de lasenal de entrada, aquellas muestras que superen ese lımite, saturan a dicho valor.

Como la senal que ingresa al sistema esta codificada en punto fijo Q31, la misma tiene valorespositivos y negativos. De esta forma contamos con dos niveles lımite, uno superior y otro inferior.Los mismos deben se calcularon experimentalmente, a partir de pruebas sonoras hasta llegar alos valores utilizados.

SCRIPT 1: Algoritmo propuesto para la distorsion

void d i s t o r s i o n ( q31 t ∗ in , q31 t ∗out , u i n t 1 6 t length , q31 t d i s t ){

f o r ( i n t i =0; i<l ength ; i++){

i f ( in [ i ] > ( q31 t ) 0x10000000 ){out [ i ] = ( q31 t ) 0x10000000 ;

}e l s e i f ( in [ i ] < ( q31 t ) 0xA0000000 )

{out [ i ] = ( q31 t ) 0xA0000000 ;

}e l s e

{out [ i ] = in [ i ] ;

}out [ i ] ∗= 3 ;

}}

• Overdrive: Como se explico anteriormente, para buscar un efecto similar al de la valvulatermoionica, se utiliza la funcion matematica raız cuadrada, cuya curva se aproxima a la deseadapara los valores positivos y tambien para los negativos si se le cambia el signo.

Por lo tanto se utilizo la funcion armsqrtq31() provista en la librerıa DSP de CMSIS provistapara el LPC1769.

SCRIPT 2: Algoritmo propuesto para el overdrive

void ove rd r i v e ( q31 t ∗ in , q31 t ∗out , u i n t 1 6 t length , q31 t d i s t ){

f o r ( i n t i =0; i<l ength ; i++){

in [ i ] ∗= d i s t ;i f ( in [ i ] > 0){

arm sqrt q31 ( in [ i ] , &out [ i ] ) ;}e l s e{

arm abs q31(&in [ i ] , &out [ i ] , 1) ;arm sqrt q31 ( out [ i ] , &out [ i ] ) ;out [ i ] ∗= −1;

Autor: Dıaz Antuna, Agustın Omar Pagina 27 de 33

Page 29: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

}}

}

• Eco IIR: Para lograr el efecto del eco IIR, se utilizo un vector con muestras pasadas de lasalida, un delay line. Los cuales se sumaran a la entrada luego de ser multiplicados por un valorde escala para no saturar la amplitud de la salida.

Ası mismo, el delay line, no recibe todas las muestras de la salida, si no que almacena una decada varias, tratando ası de lograr un mejor efecto, sin la necesidad de que este buffer ocupedemasiada memoria.

SCRIPT 3: Algoritmo propuesto para el eco IIR

void e c o i i r ( q31 t ∗ in , q31 t ∗out , u i n t 1 6 t length , q31 t profundidad ,u i n t 8 t de lay )

{s t a t i c u i n t 1 6 t d e l a y i n i d x = 0 ; // Ind i c e para agregar

muestra a l d e l a y l i n es t a t i c u i n t 1 6 t d e l a y o u t i d x = 1 ; // Ind i c e para sumar a l eco

una muestra de l a d e l a y l i n es t a t i c u i n t 8 t dens idad cont = 0 ; // S i rve para agregar a l

d e l a y l i n e una muestra de cada ’ densidad ’ e lementos ( suma a leco ’ densidad ’ veces l a misma muestra )

q31 t aux = 0 ;

f o r ( i n t i =0; i<l ength ; i++){

aux = in [ i ] >> 8 ;

out [ i ] = 0 ; // Eco IIR

out [ i ] = ( aux + ( d e l a y l i n e [ d e l a y o u t i d x ] >> 1) ) ; //Calcula e l eco sumando una muestra a n t e r i o r guardadaen l a d e l a y l i n e

// Una de cada ’ de lay ’ muestras , agrega e l eco a l ad e l a y l i n e

dens idad cont++;dens idad cont %= delay ;

i f ( ! dens idad cont ){

d e l a y l i n e [ d e l a y i n i d x ] = out [ i ] ;

d e l a y i n i d x ++;d e l a y i n i d x %= DELAY LENGTH;d e l a y o u t i d x++;d e l a y o u t i d x %= DELAY LENGTH;

}

out [ i ] = out [ i ] << 7 ;}

}

• Reverb: Siguiendo el algoritmo desarrollado para el eco IIR, se agrego a la salida, aparte dela suma de la entrada con un valor anterior, otro valor no tan anterior, que simularıa el rebotedel audio en las paredes laterales de una habitacion (siendo la otra muestra, el rebote en lapared que se encontrarıa en frente de la fuente emisora de sonido). De la misma forma que en elalgoritmo anterior, se tuvo que escalar la muestra para no saturar en amplitud.

Autor: Dıaz Antuna, Agustın Omar Pagina 28 de 33

Page 30: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

SCRIPT 4: Algoritmo propuesto para el reverb

void reverb ( q31 t ∗ in , q31 t ∗out , u i n t 1 6 t length , q31 t profundidad ,u i n t 8 t densidad )

{s t a t i c u i n t 1 6 t d e l a y i n i d x = DELAY LENGTH; // Ind i c e para

agregar muestra a l d e l a y l i n es t a t i c u i n t 1 6 t d e l a y o u t i d x [CANT REVERB] = {DELAY LENGTH/3 ,

DELAY LENGTH/2} ; // Ind i c e para sumar a l eco una muestra del a d e l a y l i n e

s t a t i c u i n t 8 t dens idad cont = 0 ; // S i rve para agregar a ld e l a y l i n e una muestra de cada ’ densidad ’ e lementos ( suma a leco ’ densidad ’ veces l a misma muestra )

u i n t 1 6 t aux = 0 ;

f o r ( i n t i =0; i<l ength ; i++){

out [ i ] = 0 ; // Reverbout [ i ] = in [ i ] >> 8 ;

f o r ( i n t i =0; i<CANT REVERB; i++){

aux = d e l a y o u t i d x [ i ] ;out [ i ] += ( d e l a y l i n e [ aux ] >> i ) ; // Calcula e l

eco sumando una muestra a n t e r i o r guardada enl a d e l a y l i n e

}

// Una de cada ’ densidad ’ muestras , agrega e l eco a l ad e l a y l i n e

dens idad cont++;dens idad cont %= densidad ;

i f ( ! dens idad cont ){

d e l a y i n i d x ++;d e l a y i n i d x %= DELAY LENGTH;

f o r ( i n t i =0; i<CANT REVERB; i++){

d e l a y o u t i d x [ i ]++;d e l a y o u t i d x [ i ] %= DELAY LENGTH;

}

d e l a y l i n e [ d e l a y i n i d x ] = out [ i ] ;}

out [ i ] = out [ i ] << 6 ;}

}

• Flanger: En este efecto, se utilizo un ”low frequency oscillation”, una senal cosenoidal en estecaso de baja frecuencia, utilizada para recorrer el vector delay line. De esta forma, la suma dela entrada con las salidas anteriores no siempre mantiene la misma demora, si no que la mismavarıa segun la posicion dada por el LFO.

Esta senal a baja frecuencia se obtuvo utilizando el programa Matlab y luego se la cargo direc-tamente en el codigo.

SCRIPT 5: Algoritmo propuesto para el flanger

Autor: Dıaz Antuna, Agustın Omar Pagina 29 de 33

Page 31: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

void f l a n g e r ( q31 t ∗ in , q31 t ∗out , u i n t 1 6 t length , q31 t profundidad ,u i n t 1 6 t c o s f , u i n t 8 t de lay )

{s t a t i c u i n t 1 6 t f l a n g e r i n i d x = 0 ; // Ind i c e para agregar

muestra a l d e l a y l i n es t a t i c u i n t 8 t dens idad cont = 0 ; // S i rve para agregar a l

d e l a y l i n e una muestra de cada ’ densidad ’ e lementos ( suma a leco ’ densidad ’ veces l a misma muestra )

s t a t i c u i n t 1 6 t l f o i d x = 0 ; // Ind i c e para r e c o r r e r e l seno ,aumenta de a 10 muestras procesadas

s t a t i c u i n t 1 6 t l f o i d x a u x = 0 ; // Ind i c e para r e c o r r e re l seno , aumenta de a 10 muestras procesadas

i n t 1 6 t f l a n g e r i d x ; // Para c a l c u l a r e l i n d i c e de l d e l a y l i n esegun una func ion coseno

f o r ( i n t i =0; i<l ength ; i++){

f l a n g e r i d x = f l a n g e r i n i d x − DELAY LENGTH/2 + l f o [l f o i d x ] ;

i f ( f l a n g e r i d x < 0)f l a n g e r i d x += DELAY LENGTH;

in [ i ] = in [ i ] >> 8 ;

out [ i ] = ( in [ i ] + ( d e l a y l i n e [ f l a n g e r i d x ] >> 1) ) ; //Calcula e l eco sumando una muestra a n t e r i o r guardadaen l a d e l a y l i n e

l f o i d x a u x ++;l f o i d x a u x %= LFO LENGTH VEL;

i f ( ! l f o i d x a u x ){

l f o i d x ++;l f o i d x %= LFO LENGTH;

}

// Una de cada ’ de lay ’ muestras , agrega e l eco a l ad e l a y l i n e

dens idad cont++;dens idad cont %= delay ;

i f ( ! dens idad cont ){

d e l a y l i n e [ f l a n g e r i n i d x ] = out [ i ] ;

f l a n g e r i n i d x ++;f l a n g e r i n i d x %= DELAY LENGTH;

}

out [ i ] = out [ i ] << 7 ;}

}

3.3. FreeRTOS

Una vez probado el funcionamiento de todos los componentes por separado, se agrego unsistema operativo embebido en tiempo real para organizar mejor la ejecucion dentro del MCU.

Autor: Dıaz Antuna, Agustın Omar Pagina 30 de 33

Page 32: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

El sistema operativo elegido es FreeRTOS, el cual es de codigo libre y esta implementadopara la lınea LPC de NXP. La IDE LPCXpresso integra esta librerıa segun el MCU elegido.

De esta forma se completo el software del proyecto, organizando la ejecucion del mismo entareas como veremos a continuacion, teniendo en cuenta que las configuraciones de los perifericos seejecutan una sola vez, por lo tanto las mismas se agrupan dentro de una funcion encargada de realizarla inicializacion de todo el hardware involucrado y por ultimo de sistema operativo embebido.

3.3.1. Tareas

Para organizar la ejecucion del software se penso en armar 5 tareas.

1. Tarea SD: Aquı se monta el file system, se abre cada uno de los archivos de texto que contienenlos parametros, se lee el contenido. A partir del mismo, se parsea, extraen los datos que se guardanen una estructura. Estos datos obtenidos de la memoria, se muestran en pantalla para que elusuario sepa con que valores se van a ejecutar los algoritmos utilizados para realizar los efectos.Una vez realizado esto, la tarea se elimina a si misma.

2. Tarea Display: Esta tarea esta bloqueada hasta que se cargue una queue indicando que losparametros se cargaron correctamente desde la SD. Evaluando el valor recibido, muestra el menucon los efectos disponibles en el caso de que no haya habido problemas o un mensaje de error siha ocurrido durante la lectura de la memoria. Luego esta tarea se elimina a si misma.

3. Tarea DSP: Esta encargada de recibir los parametros cargados en la tarjeta SD, si alguno deellos es cero, puede haber ocurrido un error en la lectura del archivo, por lo tanto el sistema nopuede iniciarse, en dicho caso, se le comunica esto a Tarea Display. En base al efecto seleccionadosegun el usuario con los botones antes mencionados, se aplica el algoritmo que corresponda unavez que se hayan recibido una cantidad de muestras utilizando el DMA. Este periferico cargauna cola indicandole a la tarea que la nueva senal ya esta disponible. En esta una vez realizadoel procesamiento, utilizando el DMA se dispara la nueva transferencia hacia el DAC.

4. Tarea Control: La misma se encarga de leer los botones que le permiten al usuario cambiarde efecto. Una vez realizado en anti-rebote digital, por una queue se aviso que el sistema leyocorrectamente la tarjeta de memoria y los archivos en ella, se realiza el desplazamiento en elmenu hacia el efecto anterior o siguiente. En base a la posicion actual del menu, se cambia elcolor del circulo asociado al mismo para que el usuario conozca el estado del sistema, y se avisapor una queue a la tarea de DSP esta informacion.

5. Tarea LED: Unicamente se encarga de hacer parpadear un led cada un segundo a modo ledtestigo para indicar que el sistema esta en funcionamiento.

Dentro de la organizacion del sistema operativo, algo a tener en cuenta es la distribucionde prioridades. Ya que todo depende de la lectura de los parametros cargados en la memoria SD, laTarea SD tiene una mayor prioridad (numero 5).

Le sigue (prioridad 4) la encargada de cargar el mensaje de error o el menu, la TareaDisplay. Como estas dos tareas solo se ejecutan una vez y luego son eliminadas, su prioridad noafectara al resto.

La Tarea DSP es la encargada de llevar a cabo el procesamiento, por lo tanto es la quetendra mayor prioridad, la numero 3, ya que las anteriores mencionadas, se eliminan a sı mismas.

Por ultimo, la Tarea Control tiene un nivel menor, el 2, dejando a la encargada de indicarque el sistema esta vivo, la Tarea LED siendo la menor.

Una vez que se organizo de esta forma el software, al realizar pruebas sobre la placa prototipo,se encontro un problema relacionado con la memoria destinada para cada tarea. La encargada derealizar el procesamiento y la que levanta los datos de la memoria SD consumıan mas memoria que lamınima establecida en el template ofrecido por FreeRTOS. Realizando este cambio, el sistema funcionocorrectamente.

Autor: Dıaz Antuna, Agustın Omar Pagina 31 de 33

Page 33: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

Indice de figuras

1. Diagrama en bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2. LPC 1769 revision B de NXP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3. Display S95160 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4. Esquematico PCM1802 obtenido del datasheet de Texas Instruments . . . . . . . . . . 8

5. Esquematico del modulo del ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

6. Esquematico PCM1781 obtenido del datasheet de Texas Instruments . . . . . . . . . . 10

7. Esquematico del modulo del DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

8. Esquematico del circuito de proteccion . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

9. Esquematico del circuito del regulador LM2575 . . . . . . . . . . . . . . . . . . . . . . 11

10. Esquematico del circuito del regulador LM1117 . . . . . . . . . . . . . . . . . . . . . . 11

11. Esquematico correspondiente al lector de memoria SD . . . . . . . . . . . . . . . . . . 12

12. Esquematico del circuito de acondicionamiento de entrada . . . . . . . . . . . . . . . . 12

13. Circuito propuesto en LTSpice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

14. Circuito final en LTSpice derivado del anterior . . . . . . . . . . . . . . . . . . . . . . 13

15. Respuesta en frecuencia real del circuito de entrada . . . . . . . . . . . . . . . . . . . . 14

16. Esquematico del circuito de salida implementado . . . . . . . . . . . . . . . . . . . . . 14

17. Esquematico del filtro RC implementado . . . . . . . . . . . . . . . . . . . . . . . . . . 15

18. Respuesta en frecuencia real del circuito de salida . . . . . . . . . . . . . . . . . . . . . 15

19. Esquematico de la main board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

20. Vista top de la placa principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

21. Vista bottom de la placa principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

22. Vista top del modulo del ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

23. Vista top del modulo del DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

24. Vista top del modulo de la fuente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

25. Senales de la comunicacion I2S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

26. Efecto eco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

27. Filtro FIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

28. Filtro IIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

29. Efecto reverberancia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

30. Efecto flanger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

31. Recorte por amplitud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

32. Valvula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Autor: Dıaz Antuna, Agustın Omar Pagina 32 de 33

Page 34: UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL … · pantalla LCD de tecnolog a TFT y una botonera para facilitar al usuario el control del equipo. ... Diagrama en bloques Al

MANUAL DE INGENIERIA UTN.BA

33. Distorsion valvula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Indice de scripts

1. Algoritmo propuesto para la distorsion . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2. Algoritmo propuesto para el overdrive . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3. Algoritmo propuesto para el eco IIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4. Algoritmo propuesto para el reverb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5. Algoritmo propuesto para el flanger . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Autor: Dıaz Antuna, Agustın Omar Pagina 33 de 33