Diseño con DSPIC30F4013 en lenguaje MikroBasicPro for dsPIC
Docente: Ing. Roger Guachalla Narváez
[email protected]
PRACTICA 05: Convolución discreta
1. Objetivos: Implementar el algoritmo de Convolución discreta en el controlador digital de señales dsPIC30F4013 2. Algoritmo de Convolución Discreta Para iniciar es importante conocer la estructura de una convolución continua en forma matemática:
La ecuación anterior describe la forma general de la convolución, sin embargo se debe recordar que la longitud de la función h(n), es finita y su máximo es M, por lo tanto la ecuación se puede reescribir de la siguiente forma:
Cada vez que una muestra de la salida y(n), es calculada por medio de la convolución, se requieren M, muestras de la señal x(n), incluida la muestra actual, esto quiere decir que para hacer la convolución se debe tener presente la necesidad de un campo de memoria igual a M para guardar las últimas muestras durante el proceso. 3. Diagrama Esquemático
4. Código fuente MikroBasicPro for DSPIC
El programa utiliza una función de transferencia de 3 valores H=[2,1,3]. En primera instancia se debe ingresar 4 valores que representan la señal de Entrada M para ello se coloca cada valor de 4-bit deseado en el switch DSW1 y a continuación se presiona el botón DATA. Posteriormente se observarán secuencialmente los 7 valores de Convolución en los indicadores LED presionando DATA para cada valor de salida.
5. Informe 6. Informe I.
Realizar un RESUMEN (escrito a mano) de por lo menos 3 páginas del fundamento teórico matemático de la Convolución Discreta. (Incluir las fuentes de Direcciones WEB así como el Material Impreso usado para el resumen)
II.
Codificar y Comentar un programa en MikroBasic o MikroC realizando la Convolución discreta a través del procedimiento Vector_Convolve incluido en la librería Vectors Library disponible en los lenguages MikroBasic, MikroC y MikroPascal Pro for DSPIC. Imprimir el código resultante.
III.
(1ra Firma) Realizar en protoboard el Ejemplo: Algoritmo de Convolución Discreta y comprobar su funcionamiento, anotando en una tabla los valores resultantes. En la misma tabla escribir los valores de covolución obtenidos por el método numérico nemotécnico. Comparar los valores obtenidos por ambos métodos. Comentar si existe alguna discrepancia entre los valores obtenidos.
IV.
(2da Firma) Convertir el código de Convolución Discreta del lenguaje MikroBasic al lenguaje MikroC Pro for dsPIC. Además cambiar la función de transferencia al vector de 5 valores H= [1,2,3,4,5]. Escribir en una tabla los valores resultantes.
V.
Conclusiones
7. Bibliografía
Programming dsPIC (Digital Signal Controllers) in BASIC - Zoran Milivojević, Djordje Šaponjić Hoja de datos: dsPIC30F4013 www.microchip.com