i'm writing the code for real time computation of the supply for harmonics using dft.
to compute dft i have to take samples of the supply voltage but im not getting proper samples...can u help me with the part to take samples,this is the code
#include "xyz2cfg.h"
#include "c:\ccstudio_v3.1\c6000\dsk6713\include\dsk6713.h"
#include "c:\ccstudio_v3.1\c6000\dsk6713\include\dsk6713_aic23.h"
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 */ \
0x0081, /* 8 DSK6713_AIC23_SAMPLERATE Sample rate control */ \
0x0001 /* 9 DSK6713_AIC23_DIGACT Digital interface activation */ \
};
/*
* main() - Main code routine, initializes BSL and generates tone
*/
void main()
{
int n=0,i=0;
int a[8]={0,0,0,0,0,0,0,0};
DSK6713_AIC23_CodecHandle hCodec;
Uint32 l_input, r_input,l_output, r_output;
/* Initialize the board support library, must be called first */
DSK6713_init();
/* Start the codec */
hCodec = DSK6713_AIC23_openCodec(0, &config);
DSK6713_AIC23_setFreq(hCodec, 1);
while(1)
{ /* Read a sample to the left channel */
while (!DSK6713_AIC23_read(hCodec, &l_input));
if(n%25==0)
{
a[i++]=l_input;
l_output=l_input;
printf("\n%d",a[i-1]);
/* Send a sample to the left channel */
while (!DSK6713_AIC23_write(hCodec, l_output));
}
if(i==7)
{
for(i=0;i<7;i++)
{a[i]=a[i+1];
i++;
}}
/* Read a sample to the right channel */
while (!DSK6713_AIC23_read(hCodec, &r_input));
n++;
}
/* Close the codec */
DSK6713_AIC23_closeCodec(hCodec);
}