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.

microphone input ezdsp C5535

hii,

I,m trying to take an input to my c5535 ezdsp kit through the microphone.

i tried to vary the test code aic3204 which produces a 1Khz signal in the headphones ,which i can hear but the second part of looping the data is not working.

i even tried the 2nd example of c5505 teaching rom, with the appropriate changes for the c5535 ezdsp kit. in this it goes to an infinite loop while executing the code 

/* ------------------------------------------------------------------------ *
* *
* aic3204_codec_read( ) *
* *
* ------------------------------------------------------------------------ */

void aic3204_codec_read(Int16* left_input, Int16* right_input)
{
volatile Int16 dummy;

counter1 = 0;

/* Read Digital audio inputs */
while(!(I2S2_IR & RcvR) )
{
counter1++; // Wait for receive interrupt
}

*left_input = I2S2_W0_MSW_R; // Read Most Significant Word of first channel
dummy = I2S2_W0_LSW_R; // Read Least Significant Word (ignore)
*right_input = I2S2_W1_MSW_R; // Read Most Significant Word of second channel
dummy = I2S2_W1_LSW_R; // Read Least Significant Word of second channel (ignore)

}

This is a subroutine called in the main program , and it goes into an infinite loop inside the while loop.

pls help me how to solve this.

Thanks and Regards,

Srivatsa

  • Hi,

    There are I2S codec related examples in C55XCSL-C5517-AUXPACK package.

    You could download this package from http://www.ti.com/tool/sprc133.

    Hope the information helps.

    Regards

     Vasanth

     

  • Hi Srivatsa,

    I had the same problem., but I solved it.

    If you leave it as it is, you'll need a line input level in the stereo input  (J3).

    But if you want to use the microphone just add the following line in file aic3204_loop_linein.c, function Int16 aic3204_loop_linein():

    AIC3204_rset( 51, 0x48) ;                // Power up MIC bias using internal LDO

    and modify:

    AIC3204_rset( 59, 0x3c);                // Unmute Left MICPGA, Gain = 30dB
    AIC3204_rset( 60, 0x3c);                // Unmute Right MICPGA, Gain = 30dB


    and of course you can comment that annoying 1Khz tone and make an infinite loop instead of only 5 seconds.



    Have a nice day!