ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

DISEÑAR UN GENERADOR DE SEÑALES SINUSOIDALES USANDO MÉTODO DE TABLAS


Enviado por   •  11 de Diciembre de 2018  •  Prácticas o problemas  •  1.193 Palabras (5 Páginas)  •  104 Visitas

Página 1 de 5

DISEÑAR UN GENERADOR DE SEÑALES SINUSOIDALES USANDO MÉTODO DE TABLAS

  • Se desea diseñar un generador de señales sinusoidales usando el método de tablas.
  • Se desea implementar el algoritmo en la tarjeta de desarrollo TMS320C6713.
  • La frecuencia de la señal sinusoidal analógica debe ser de 1200 Hz.
  • La amplitud de la señal debe ser de 0.5 Volts.
  • La frecuencia del convertidor D/A (CODEC AIC23) debe ser de 8000 muestras por segundo.

Objetivo:

  • Calcule los valores de la tabla de datos en Matlab.
  • Escriba el código en ANSI C.

clear all; close all; clc;

 

N=20;     % puntos por periodo

k=3;      %número de ciclos por periodo

B=11585;  %factor de proporcionalidad

f0=1200;  %frecuencia de la señal analogica

fs=8000;  %frecuencia de muestreo

 

y=[0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0]; %inicialización delvector y

for i=0:N-1

    y(i+1,1)=B*cos(2*pi*(k/N)*i)             %a cada componente del vector se le                           asigna un valor de la tablas mediante

                 un contador

end

//Genera un tono a partir de una tabla

//Fuente: DSP Applications ussing C

//Rulph Chassaing

//Modificado: Héctor Santiago R.

#include                             // Soporte del chip

#include                     // Soporte de los DIPs

#include                     // Soporte de los LEDs

#include "DSK6713_AIC23.h"                    // Archivo de soporte del codec-DSK

Uint32 fs=DSK6713_AIC23_FREQ_8KHZ;            // Frecuencia de muestreo

#define N_puntos (short)20                    // Tamaño de la tabla y tabla de datos

short tabla_coseno[N_puntos]={

11585,6809.4921,-3579.96187,-11017.9897,-9372.4618,0,9372.4618,11017.9897,

3579.9618,-6809.4921,-11585,-6809.4921,3579.9618,11017.9897,9372.4618,

0,-9372.4618,-11017.9897,-3579.9618,6809.4921

}; // datos generados por Matlab

int i=0;                                         // indice para la tabla de la senoidal (empieza en cero)

union {short canal[2]; Uint32 estereo;} salida;  // Unión para envío de datos

...

Descargar como (para miembros actualizados)  txt (3.7 Kb)   pdf (86.2 Kb)   docx (12.3 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com