Impr PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

Unidad Profesional Interdisciplinaria en

Ingenierı́a y Tecnologı́as Avanzadas

Dispositivos Programables
4TV1

Equipo 1

Practica 2

Alumnos: Profesor:
Casas Castillo David Juan Manuel Madrigal Bravo
Castillo Martinez Leonel Jafet Fecha :
Castro Mejia Angel Issac 17/02/2020
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

Objetivo: Generar señales periódicas usando el códec y visualizarlas en un osciloscopio.

Antecedentes:

Frecuencia de muestreo

Como sabemos el audio es una onda que se disperse por un entorno y que va variando a lo largo del
tiempo. Por lo que este tiene un máximo y un mino cuando se digitaliza; Las diferencias de altura (entre
máximos y mínimos) de un momento a otro es lo que provoca lo que nosotros llamamos como sonido que
es lo que nosotros detectamos con el tímpano.

Ya sabiendo lo que es el audio o el sonido y cómo se comporta podremos decir que la frecuencia de
muestreo es simplemente la cantidad de muestras que tomas de un audio en un segundo.

Si nosotros tomáramos 10 muestras en cada segundo de audio este se escucharía mal o no se entendería el
mensaje; ya que no se percibiría la continuidad musical y se perderían muchas frecuencias.

Normalmente estas muestras siempre se toman 44100 y ¿por qué?


Este valor lo tomamos gracias a la teoría de Nyquist que dice lo siguiente “hay que tomar el doble de
muestras de la frecuencia máxima que se puede percibir.”, gracias a esta teoría nosotros no
percibimos estos saltos en la continuidad y no perder frecuencia y así reconstruir la señal original.

El ser humano su oído percibe de 20.000 – 22000 herzios de frecuencia (es decir, ondas que se
suben y bajan hasta unas 20000 veces en un segundo).

Entonces, para poder pillar los máximos sin saltos y sin perdida en la percepción del oído
humano hay que duplicar ese número, con lo cual nos salen 44100 Hz

Code Composer
Code Composer Studio (CCStudio o CCS) es un entorno de desarrollo integrado (IDE) para desarrollar
aplicaciones para procesadores integrados de Texas Instruments (TI).
Los procesadores integrados de Texas Instruments incluyen DSP TMS320 , sistema en
chip OMAP , sistema en chip DaVinci , procesadores de
aplicaciones Sitara , microcontroladores Hercules , MCU Simplelink ( MSP432 y microcontroladores
de conectividad inalámbrica ), MSP430 y Tiva / Microcontroladores Stellaris. También permite la
depuración en varios subsistemas como Ducati , IVA Accelerator [4] y PRU-ICSS. [5]

1/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

Code Composer Studio está diseñado principalmente para el diseño de proyectos integrados y
la depuración basada en JTAG de bajo nivel (baremetal) . Sin embargo, los últimos lanzamientos se basan
en versiones no modificadas del IDE de código abierto de Eclipse , que pueden ampliarse fácilmente para
incluir soporte para depuración de aplicaciones a nivel del sistema operativo ( Linux , Android , Windows
Embedded ) y conjuntos de compiladores de código abierto como GCC .
Las primeras versiones incluían un kernel en tiempo real llamado DSP / BIOS y su inicio posterior SYS /
BIOS. Actualmente, el sucesor de estas herramientas, el ecosistema de herramientas integradas TI-
RTOS , está disponible para descargar como complemento gratuito a Code Composer Studio

Señales periódicas

Son aquellas en las que se establece un patrón que se repite consecutivamente a lo largo del tiempo.
El patrón de repetición se conoce como ciclo y el tiempo que tarda en completarse un ciclo es
el período. Lógicamente, el período se mide en unidades de tiempo.

CODEC AIC23

Desarrollo:

14. Visualice las gráficas tanto en tiempo como en frecuencia con las herramientas del CCS. Esto se
puede hacer visualizando el vector buffer. Consultar con el decente.
Se debe ingresar a Tools – Graph – Single Time y colocar la siguiente configuración

2/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

15. Conecte un osciloscopio en el audífono y verifique que se genera una señal sinusoidal de 1 KHz.
(Calificación 5.0)

Señal Sinusoidal en el osciloscopio

Señal Sinusoidal en Graph de Code Composer Studio

3/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

16. Crear tres vectores más con señales periódicas diferentes y frecuencias 2 KHz, 4 KHz y 8 KHz
respectivamente. Estas señales serán indicadas por el docente. Hacer uso de los dipswitchs para
seleccionar el tipo de señal periódica de salida. (Calificación 8.5).
short
signal1[96]={0,65,131,195,259,321,383,442,500,556,609,659,707,752,793,831,866
,897,924,947,966,981,991,998,1000,998,991,981,966,947,924,897,866,831,793,752
,707,659,609,556,500,442,383,321,259,195,131,65,0,-65,-131,-195,-259,-321,-
383,-442,-500,-556,-609,-659,-707,-752,-793,-831,-866,-897,-924,-947,-966,-
981,-991,-998,-1000,-998,-991,-981,-966,-947,-924,-897,-866,-831,-793,-752,-
707,-659,-609,-556,-500,-442,-383,-321,-259,-195,-131,-65};
//Buffer de salida
short signal2[48]={-44,-4,41,82,113,128,122,93,44,-19,-87,-151,-198,-217,-
201,-143,-45,90,253,430,606,765,891,972,1000,972,891,765,606,430,253,90,-45,-
143,-201,-217,-198,-151,-87,-19,44,93,122,128,113,82,41,-4};
short signal3[24]={0,-500,-866,-1000,-866,-500,0,-500,-866,-1000,-866,-
500,0,500,866,1000,866,500,0,500,866,1000,866,500};
short signal4[12]={1000,1000,1000,1000,1000,1000,-1000,-1000,-1000,-1000,-
1000,-1000};

Código para 8.5


//signal.c

#include "dsk6713_aic23.h" //Archivo de soporte para el códec y


el DSK
Uint32 fs=DSK6713_AIC23_FREQ_96KHZ; //Tasa de muestreo
int loop1 = 0;
int loop2=0;
int loop3=0;
int loop4 =0;
short gain = 10;
short
signal1[96]={0,65,131,195,259,321,383,442,500,556,609,659,707,752,793,831,866
,897,924,947,966,981,991,998,1000,998,991,981,966,947,924,897,866,831,793,752
,707,659,609,556,500,442,383,321,259,195,131,65,0,-65,-131,-195,-259,-321,-
383,-442,-500,-556,-609,-659,-707,-752,-793,-831,-866,-897,-924,-947,-966,-
981,-991,-998,-1000,-998,-991,-981,-966,-947,-924,-897,-866,-831,-793,-752,-
707,-659,-609,-556,-500,-442,-383,-321,-259,-195,-131,-65};
//Buffer de salida
short signal2[48]={-44,-4,41,82,113,128,122,93,44,-19,-87,-151,-198,-217,-
201,-143,-45,90,253,430,606,765,891,972,1000,972,891,765,606,430,253,90,-45,-
143,-201,-217,-198,-151,-87,-19,44,93,122,128,113,82,41,-4};
short signal3[24]={0,-500,-866,-1000,-866,-500,0,-500,-866,-1000,-866,-
500,0,500,866,1000,866,500,0,500,866,1000,866,500};
short signal4[12]={1000,1000,1000,1000,1000,1000,-1000,-1000,-1000,-1000,-
1000,-1000};
short buffer[256];
const short Lbuffer= 256; //Tamaño
del buffer de salida
int i = 0;

4/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

interrupt void c_int11() //Rutina del servicio de


interrupción
{

if(DSK6713_DIP_get(3) == 1 && DSK6713_DIP_get(2) == 1 && DSK6713_DIP_get(1)


== 1 && DSK6713_DIP_get(0) == 0){
output_sample(gain*signal1[loop1]); //Valores de
salida de la señal diente de sierra
buffer[i] = signal1[loop1]; //Salida al buffer
i++;

//incremento de la cuenta en el buffer


if(i==Lbuffer) i=0;
if (loop1 < 95) ++loop1;
else loop1 = 0;
}
else if (DSK6713_DIP_get(0) == 1 ){
output_sample(gain*signal2[loop2]);
buffer[i] = signal2[loop2]; //Salida al
buffer
i++;

//incremento de la cuenta en el buffer


if(i==Lbuffer) i=0;
if (loop2 < 47) ++loop2;
else loop2 = 0;
}
else if (DSK6713_DIP_get(1) == 1){
output_sample(gain*signal3[loop3]);
buffer[i] = signal3[loop3]; //Salida al
buffer
i++;
//incremento de la cuenta en el buffer
if(i==Lbuffer) i=0;
if (loop3 < 23) ++loop3;
else loop3 = 0;
}
else if (DSK6713_DIP_get(2) == 1 ){
output_sample(gain*signal4[loop4]);
buffer[i] = signal4[loop4]; //Salida al
buffer
i++;

//incremento de la cuenta en el buffer


if(i==Lbuffer) i=0;
if (loop4 < 12) ++loop4;
else loop4 = 0;
}
else {
output_sample(gain*0);
}

5/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

//Reinicio de la tabla que contiene un periodo de la señal


return; //Retorno de la interrupción
}
void main()
{
comm_intr(); //Inicialización del DSK, codec
y McBSP
while(1); //Bucle infinito
}

17. Capture las ventanas, gráficas, ajustes realizados en el CCS y fotografías del osciloscopio.
Osciloscopio:

Señal a 1 Khz Señal a 2 Khz

Señal a 4 Khz Señal a 8 Khz

6/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

Code Composer Studio:

Cuestionario

1. ¿Qué librerías se agregaron y por qué?

csl6713.lib, dsk6713bsl.lib, rts6700.lib para el tiempo de ejecución, archivos de biblioteca de soporte de


placa y chip respectivamente; también se agregaron otras librerías que se agregaron las cuales fueron
dsk6713_aic23.h, dsk6713.h, dsk6713_dip.h y C6713dskinit.h.

2. ¿De qué depende el periodo de la señal generada?

Depende de la frecuencia de muestreo que en este caso es de 96 KHz que es la máxima frecuencia que
permite el DSP.

T = 1/f

3. ¿De qué frecuencia máxima se puede generar un tono sinusoidal en el DSK6713?

De 12KHz ya que se necesitan al menos 8 muestras para construir la señal sinusoidal.

4. Investigue marcas comerciales de generadores o sintetizadores de funciones arbitrarias.

• GW INSTEK
• RIGOL
• TEKTRONIX

7/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

• BK PRECISION
• KEITHLEY

5. Investigue el esquema de un sintetizador de frecuencia con el uso de un PLL?

6. ¿Qué es el fenómeno de Gibbs?

Cuando una forma de onda que incluye una discontinuidad (o cuyos derivados son discontinuos) se
sintetiza en Fourier, el ajuste es deficiente cerca de la discontinuidad. A medida que aumenta el número
de componentes de frecuencia incluidos en la síntesis, la región de ajuste deficiente se vuelve más
estrecha, pero continúa un exceso de discontinuidades. El pobre ajuste es conocido comúnmente
como orejas de Gibbs.

8/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

Observaciones y conclusiones

Casas Castillo David:

Castillo Martínez Leonel Jafet:

Castro Mejia Angel Issac:

9/8
UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERIA
Y TECNOLGIAS AVANZADAS – IPN

PROCESADORES DIGITALES DE SEÑALES


Práctica No. 2
2 sesiones

Generación de señales periódicas

Profr. M. en C. Juan Manuel Madrigal Bravo

Bibliografía

[1] Code Composer Studio IDE Getting Started Guide, User's Guide. SPRU509f.

[2] F. J. Barrero García, S. L. Toral Marín, M. Ruiz González, Procesadores Digitales de Señal de altas
prestaciones de Texas Instruments, Mc Graw-Hill, 2005.

[3] R. Chassaing, Digital Signal Processing and Applications with the C6713 and C6416 DSK, Wiley-
Interscience, 2005.

[4] S. A. Tretter, “Communication System Design Using DSP Algorithms, with Laboratory Experiments
for the TMS320C6713TM DSK”, Springer 2008.

Bibliografías antecedentes:

• https://refractionproductions.com/que-es-frecuencia-de-muestreo-profundidad-
resolucion-bits-audio/
• http://www.pulso.uniovi.es/wiki/index.php/Frecuencia_de_muestreo
• http://musiki.org.ar/Frecuencia_de_muestreo
• https://es.slideshare.net/ElianaHernandez4/fenomeno-gibbs
• http://blog.espol.edu.ec/telg1001/senales-periodicas-y-no-periodicas/

10/8

También podría gustarte