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.

AIC23B Switch Input Dynamically



Hello,

Is there a recommended way to switch between line and microphone inputs dynamically with the AIC23B? Currently, when an input changes (detect a line input connection), we adjust the insel and micm bits in the analog audio path register, but this does not always work. Many times the line input is either not audible after switching or the mic input audio is still coming through. Line input and microphone input work well on their own, it is only when switching that we have problems.

We have a debug routine that dumps register values and everything looks OK there. All power functions are turned on and insel and micm are set to the correct values, and the volume/mute values are good.

This is being used with an AVR32 UC3A0512 using Atmel's ASF driver.

Thanks in advance for any help.

  • Hi, Jay,

    My AIC23B apps engineer is on holiday at the moment. When he returns, he will look at your issue. This might be as late as next week.

    He's probably going to ask you for register dumps, so if you have them, you might want to post them.

    -d2

  • Hi Don,

    Thanks for the reply, output from our register dump:

    pdc = 0x00;

    aapc.byp = 0

    aapc.dac = 1

    aapc.ste = 0

    aapc.sta = 0

    aapc.insel = 0

    aapc.micm = 1

    aapc.micb = 1

    DAIF = 0x006
    DAPC = 0x001
    SRC = 0x00d
    LLICVC = 0x017
    RLICVC = 0x017

    Digital interface activated

    When mic input is elescted, insel=1 and micm = 0

    Registers look the same when the input is working correctly and when it is not.