I'm developing on OMPA-L137 EVM.
EVM adopt AIC3106.
I can't set ADC/DAC sampling rate to 16/24KHz. It fixed at 48KHz.
According to AIC3106 datasheet,
http://www.ti.com/lit/ds/symlink/tlv320aic3106.pdf
fS(ref) = CLKDIV_IN / (128 × Q)
EVMOMAPL137_AIC3106_rset( 102, 0 ); // CLKDIV_IN = MCLK
EVMOMAPL137_AIC3106_rset( 3, 0x22 ); // [PLL=OFF] [Q=4] [P=2]
MCLK = 24.567MHz
fS(ref) = 24.567MHz / (128 * 4 ) = 48KHz
So, I config Page0/Register2 to change ADC/DAC sampling rate
EVMOMAPL137_AIC3106_rset( 2, 0xAA ); //ADC fs = fs/6 , DAC fs = fs/6
==> ADC fs = fS(ref) / 6 = 48KHz / 6 = 8KHz
According to datasheet, I should get ADC/DAC 8KHz. But it failed.
The "while ( ! ( MCASP1_SRCTL0 & 0x20 ) );" is stilled executed 48000 times per second.
Please help me!