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.

TLV320AIC3100 integration issue

Hi,

I’m integrating the CODEC TLV320AIC3100IRHBR in a new design. I attached the schematics of the CODEC and its decoupling below. I'm trying to use the beep generator in order to validate the integration of the CODEC. I attached the initialization routine and the beep generation routine. I'm able to communicate with the CODEC via I2C without any issue, but i'm unable to generate a beep. When turning ON the class-D power amp ( Write register 0x20 on page 1, value: 0xC6 ) I don't see the 350 kHz waveform that is suppose to be present on SPKP and SPKM outputs. I don't use the micro inputs so I grounded these inputs with a 10 k resistor. I saw in other posts that It is recommended to use a 100 nF cap to ground on these inputs when not used. I did so, but no changes in CODEC behavior. I also generate the BLCK at 1.75 MHz. The PLL settings may need to be corrected, I'm working on that. Does anyone may give me a hand on this?

Thank you.

David

CODEC_Init.xlsx

Beep_Routine.xlsx

  • Hi, David,

    The schematic seems to be in order. I only recommend to leave floated the MICBIAS if it won't be used.

    Regarding your register configuration, could you verify if the beep tone can be generated at the headphone output. This would let us know if the issue is related with the output or anything else. Additionally, I recommend to verify that MCLK, BCLK and WCLK are being provided to the codec. The processing blocks require several clock pulses in order to be initialized correctly.

    Best regards,
    Luis Fernando Rodríguez S.
  • Hi Luis,

    We found out that the problem is the filters I've placed on class-D amplifier output.

    When trying to set the register 32 on page 1 (Class-D Speaker Amplifier) to 0xC6, we noticed that D7 short-circuit interrupt flag on register 44 on page 0 (Interrupt Flags—DAC) was set. Then, the value of register 32 was set back to 0x06.

    When removing the caps and replacing the ferrite beads by 0 Ohm jumpers, we finally had the 350 kHz.

    Now we will work on the beep generator.. All clocks are present. Any idea why this wouldn't be working?

    Thank you for your time.

    David

  • Hello, David,

    It should be something wrong in the filter that could be causing an overload/short-circuit. In some of our codec designs, we recommend to use an EMI filter of 100-ohm or higher with a 470pF capacitor. Please take a look at this note for details: www.ti.com/.../slaa581.pdf

    Best regards,
    Luis Fernando Rodríguez S.