Professional Documents
Culture Documents
la capacidad de
graficar y admite la depuracin en tiempo real.
El compilador compila un programa fuente en C con extensin .c para producir un archivo
fuente de ensamblador con extensin asm. El ensamblador ensambla un archivo extensin
.asm para producir un archivo de objeto de lenguaje de mquina con la extensin .obj. El
enlazador combina archivos objeto y bibliotecas de objetos para producir un archivo
ejecutable con extensin .out. Este archivo ejecutable representa un archivo Formato (COFF)
de objeto comn relacionado. Este archivo ejecutable puede ser cargado y ejecutado
directamente en el DSK6713.
#include "dsk6713.h"
#include "dsk6713_aic23.h"
#include "dsk6713_led.h"
#include "dsk6713_dip.h"
// ndice de table
short loop = 0;
// factor de ganancia
short gain = 10 ;
// output b u f f e r
Int16 out_buffer [256];
// tamao del buffer
const short BUFFERLENGTH = 256;
// contador para el buffer
int i = 0 ;
/* Codec configuration settings */
DSK6713_AIC23_Config config = {
0x0017, // 0 DSK6713_AIC23_LEFTINVOL Left line input channel volume
0x0017, // 1 DSK6713_AIC23_RIGHTINVOL Right line input channel volume
0x00d8, // 2 DSK6713_AIC23_LEFTHPVOL Left channel headphone volume
0x00d8, // 3 DSK6713_AIC23_RIGHTHPVOL Right channel headphone volume
0x0011, // 4 DSK6713_AIC23_ANAPATH Analog audio path control
0x0000, // 5 DSK6713_AIC23_DIGPATH Digital audio path control
0x0000, // 6 DSK6713_AIC23_POWERDOWN Power down control
0x0043, // 7 DSK6713_AIC23_DIGIF
Digital audio interface format
0x0001, // 8 DSK6713_AIC23_SAMPLERATE Sample rate control
0x0001 // 9 DSK6713_AIC23_DIGACT Digital interface activation
};
/* Pre-generated sine wave data, 16-bit signed samples */
Int16 sine_table[48] = {
0x0000, 0x10b4, 0x2120, 0x30fb, 0x3fff, 0x4dea, 0x5a81, 0x658b,
0x6ed8, 0x763f, 0x7ba1, 0x7ee5, 0x7ffd, 0x7ee5, 0x7ba1, 0x76ef,
0x6ed8, 0x658b, 0x5a81, 0x4dea, 0x3fff, 0x30fb, 0x2120, 0x10b4,
0x0000, 0xef4c, 0xdee0, 0xcf06, 0xc002, 0xb216, 0xa57f, 0x9a75,
0x9128, 0x89c1, 0x845f, 0x811b, 0x8002, 0x811b, 0x845f, 0x89c1,
0x9128, 0x9a76, 0xa57f, 0xb216, 0xc002, 0xcf06, 0xdee0, 0xef4c
};
Uint32 fs = DSK6713_AIC23_FREQ_48KHZ;
// main ( ) Cdigo principal de rutinas, inicializa la BSL y corre la aplicacin de los LEDS
void main ( )
{
DSK6713_AIC23_CodecHandle hCodec;
DSK6713_init();
DSK6713_LED_init();
DSK6713_DIP_init();
//Inicializa el cdec//
hCodec = DSK6713_AIC23_openCodec(0, &config);
while(1)
//DIP Swi tch API
// DSK6713 DIP get (Uint32 dipNum)
// Retorna un valor de 0 si el switch est en o f f
// Retorna un valor de 1 si el switch est en on
// i n f i n i t e loop
{
if (DSK6713_DIP_get ( 0 ) == 0)
{// turn LED#0 on
DSK6713_LED_on ( 0 );
out_buffer [i] = sine_table [loop] ;
// wh i l e ( return value is not z e ro )
// see DSK6713 AIC23 write ( . . . )
// send data to left channel
// output every Ts SW0
while (!DSK6713_AIC23_write (hCodec, sine_table [loop]*gain));
// send data to right channel
while (!DSK6713_AIC23_write (hCodec, sine_table [loop]*gain));
i++;
if (i==BUFFERLENGTH) i=0;
// check for end of table
if (++loop > 47) loop = 0;
}//LED#0 o f f
else DSK6713_LED_off (0);
}
}
Crear un nuevo proyecto en CCS
category:
C671x
full
speed most critical
none
2. Elija la transformada rpida de Fourier (FFT) para que el tamao del cuadro sea de 2
orden. Pulse Aceptar y compruebe que el grfico de magnitud FFT representa la
componente de 1000 Hz.