Está en la página 1de 5

ETN 1015 PROCESAMIENTO DIGITAL DE SEALES GUA DE LABORATORIO PRCTICA # 2 Objetivo.

o. Familiarizarse con el modo de operacin del DSP/BIOS de manera que posteriormente se pueda aprovechar toda su potencialidad para desarrollar una aplicacin de procesamiento digital de seales; posteriormente, observar los principios de funcionamiento del cdec, con un ejemplo de sonido. Fundamentos. El simple ejemplo de manejo de leds experimentado en la prctica anterior, est montado sobre un kernel multitarea de tiempo real, denominado DSP/BIOS. La ntima integracin del ambiente de desarrollo del Code Composer con el DSP/BIOS permite a los usuarios, aadir fcilmente a su cdigo de programa, funcionalidades que requeriran una gran cantidad de esfuerzo con otras herramientas. Los programas del DSP/BIOS estn organizados de modo tal que, partes lgicamente independientes de un programa, se ejecutan como tareas e hilos independientes. Para una aplicacin como la de un telfono mvil, una tarea podra ser asignada a escuchar si se produce una transferencia de informacin, otra a esperar por la entrada de usuario, otra a verificar peridicamente el nivel de la batera, etc.; en lugar de tener una sola tarea tratando de realizar todo esto a la vez. Adems de la agenda bsica de tareas DSP/BIOS incluye tambin componentes que permiten la comunicacin y sincronizacin entre tareas y dispositivos. El ejemplo ledprd realiza exactamente la misma funcin que en la prctica anterior, empleando la agenda del DSP/BIOS para ejecutar un hilo peridicamente cada 200 milisegundos, en lugar de utilizar un lazo de retardo por software. Trabajo Previo. Estudiar la presente gua de laboratorio para responder a las preguntas de la prueba de ingreso. Procedimiento. Fase de preparacin del DSK: Cada vez que se desea utilizar el kit de experimentacin se deben llevar a cabo los seis pasos descritos en la prctica anterior, para asegurarse de que el equipo est operando correctamente. (Recuerde que el paso 1 conectar el cable usb ya no es ms necesario) Fase de experimentacin (Primera Parte):

Paso 1. Abrir el proyecto ledprd.pjt mediante la opcin del men Project Open seleccionando ledprd.pjt del directorio C:\CCStudio_v3.1\examples\dsk6713\bsl\ledprd. La forma de efectuar los pasos 2 a 4 siguientes se indic en la prctica anterior. Paso 2. Cargar el archivo ejecutable led.out que se encuentra en el directorio ledprd\Debug. Paso 3. Ejecutar el programa. El LED #0 deber empezar a parpadear y el LED #3 debera encenderse y apagarse siguiendo el movimiento del DIP switch #3. Paso 4. Verificado el funcionamiento del programa detener su ejecucin. Paso 5. Examinar el cdigo del programa siguiendo el mismo procedimiento que para la prctica anterior y explicar su funcionamiento al docente. Se observa que solamente se produce inicializacin en la funcin main( ); cuando sta funcin termina su ejecucin, retorna el control a la agenda DSP/BIOS que toma la responsabilidad de encontrar mayor trabajo a realizar. En este caso blinkLED0( ) se define como un hilo peridico que se ejecuta cada 200 mseg. Las ventajas de este mtodo son: No se pierde tiempo en lazos de retardo. El trabajo se realiza cuando est programado o bien cuando un recurso necesario para la ejecucin se torna disponible. Se simplifica el cdigo puesto que trabajos independientes pueden ser separados en hilos lgicos que son gestionados por el DSP/BIOS.

Para verificar los parmetros de la agenda: Paso 1. Expandir la entrada DSP/BIOS Config en la vista del rbol del proyecto. Hacer doble click en el archivo ledprd.cdb para abrirlo con la herramienta de configuracin de BIOS Paso 2. Expandir la entrada Scheduling en la vista de herramientas de configuracin (configuration tools). Esta muestra el grupo de parmetros configurables relacionados con la agenda. Paso 3. Expandir la seccin PRD Periodic Function Manager para ver la lista de los hilos peridicos existentes en la agenda. Debera existir una entrada llamada PRD_blinkLED0. Hacer click con el botn derecho del ratn para seleccionar sus propiedades y analice la informacin que se observa en la pantalla. Funcin es el nombre del hilo que contiene el cdigo a ser ejecutado, en este caso _blinkLED0. El smbolo inicial de subrayado es necesario porque se trata de una funcin C; las funciones escritas en assembly no necesitan de ste

smbolo. Periodo es el tiempo en pulsos o marcas (ticks) de reloj, pasado el cual la funcin es llamada nuevamente. Cada marca es equivalente a 1 mseg. Paso 4. Hacer click en Cancel para salir de la ventana de propiedades. Vamos a aadir en el archivo fuente ledprd.c un segundo hilo llamado blinkLED1( ) que hace parpadear el LED #1 a una velocidad diferente a la del LED #0. Paso 1. Expandir la entrada Scheduling en la herramienta de configuracin de DSP/BIOS y hacer clic en PRD Periodic Function Manager. Seleccionar del men la opcin Insert PRD. Se crear una nueva entrada en la agenda llamada PRD0. Paso 2. Hacer click con el botn derecho en PRD0 y seleccionar propiedades (Properties). Cambiar el campo periodo a 100 y el campo funcin a _blinkLED1. Paso 3. Hacer click en OK para confirmar los parmetros. Hacer clic en PRD0 y la herramienta de configuracin le permitir cambiar el nombre; cmbielo a PRD_blinkLED1. Paso 4. Guardar el nuevo archivo de configuracin DSP/BIOS. Paso 5. Recompilar el programa. Paso 6. Cargar el nuevo archivo ejecutable led.out. Paso 7. Hacer correr el programa, verificar su funcionamiento y finalmente, detener su ejecucin. Realizar las modificaciones necesarias para que los LEDs #2 y #3 parpadeen con periodos de 400 mseg y 800 mseg respectivamente. Mostrar el funcionamiento al docente. Paso 8. Borrar las modificaciones realizadas para dejar el programa en su estado inicial. Fase de experimentacin (Segunda Parte): Este ejemplo instruye al codec a generar una onda seno de 1 kHz de frecuencia en los conectores de salida headphone y line. Paso 1. Cerrar el proyecto en el que se estaba trabajando anteriormente mediante la opcin Project Close. Previamente se deben tambin cerrar todos los archivos abiertos, relacionados con el proyecto, haciendo click en X en la esquina superior derecha de sus ventanas. Paso 2. Enchufar un par de audfonos o parlantes en el conector headphones del DSK.

Paso 3. Abrir el proyecto tone.pjt que se encuentra en el directorio C:\CCStudio_v3.1\examples\dsk6713\bsl\tone. Paso 4. Cargar el archivo ejecutable tone.out, que se encuentra en el directorio tone\Debug. Paso 5. Hacer correr el programa. Debera escucharse un tono de 1 kHz. El sonido cesar despus de 5 segundos. Paso 6. Detener el programa. Paso 7. Examinar el cdigo de programa y explicar su funcionamiento al docente. El arreglo tabla seno (sinetable) contiene una onda seno pregenerada, utilizando datos de 16 bits con signo, que se adecan al AIC23; los datos cubren exactamente un periodo y la amplitud iguala el rango completo del codec. Cada funcin write enva al codec una muestra de 16 bits; cada muestra es enviada dos veces, una al canal izquierdo y otra al canal derecho; el codec est configurado para recibir datos a una velocidad de 48000 muestras estreo por segundo. La tabla consta de 48 datos y el resultado es una onda de 1 kHz de frecuencia en ambos canales. El puerto serial McBSP1 se utiliza para transmitir datos al codec a una velocidad mucho ms lenta que aquella con la que el DSP procesa los datos. La funcin write devuelve un 1 si se ejecuta exitosamente o un 0 si el canal serial se encuentra ocupado. El lazo while relacionado con la escritura, espera mientras el puerto serial est ocupado, de manera que el programa puede sincronizarse a la velocidad del codec. Los comandos que se utilizan para inicializar y desactivar el codec deben encontrarse al principio y al final de todo programa que use el mdulo codec de la BSL. El comando DSK6713_openCodec( ) devuelve un permiso que se transfiere a cada una de las otras funciones del codec. Indique al docente dos maneras para lograr que el sonido reproducido tenga una duracin de 10 segundos. Terminada la prctica se debe cerrar la sesin en el DSK siguiendo el procedimiento indicado en la prctica anterior. Informe de la prctica. 1. Indique en sus propias palabras cmo se asegurara que el kit de experimentacin est operando correctamente antes de utilizarlo? 2. Indique en sus propias palabras y en base a lo asimilado en las dos prcticas con el kit de experimentacin cules son los tres pasos

indispensables para hacer que una modificacin de un programa se ejecute en el DSK? 3. Indique en sus propias palabras cul es el procedimiento a seguir para cerrar una sesin con el DSK?

También podría gustarte