This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/TMS320C5505: FIR filter dsplib

Part Number: TMS320C5505

Tool/software: Code Composer Studio

Dear All,


I am trying to use the built-in cfir function in dsplib to implement the fir filter. I am using below code:

Int16 left_input;

int const h[52] = {
        -22,    -25,    -30,    -38,    -50,    -66,    -86,   -112,   -143,
        -182,   -228,   -283,   -348,   -425,   -515,   -623,   -752,   -909,
        -1103,  -1350,  -1677,  -2136,  -2838,  -4071,  -6895, -20853,  20853,
         6895,   4071,   2838,   2136,   1677,   1350,   1103,    909,    752,
         623,    515,    425,    348,    283,    228,    182,    143,    112,
         86,     66,     50,     38,     30,     25,     22
};

void main( void )
{
    signed short int left_input2 = 0

    /* Initialize BSL */
    USBSTK5505_init( );

    /* Initialize PLL */
    pll_frequency_setup(100);

    /* Initialise hardware interface and I2C for code */
    aic3204_hardware_init();
    
    /* Initialise the AIC3204 codec */
    aic3204_init();

    asm(" bclr XF");

    for ( i = 0  ; i < SAMPLES_PER_SECOND * 6000  ;i++  )
    {
        aic3204_codec_read(&left_input, &right_input); // Configured for one interrupt per two channels.

        cfir(&left_input, h, &left_input2, 0, 1, 52);

       left_output =  left_input2;

}

However, I am getting the error like

Description    Resource    Path    Location    Type
#169 argument of type "const int *" is incompatible with parameter of type "DATA *"   

Seems like there is problem in storing the coefficients of filter. I am not sure which data type should be used to store the coefficients.

Does anyone know how to store coefficients 'h' of fir filter?


Please let me know if you can help.

Thanks and regards,

Satyajit