https://e2e.ti.com/support/audio-group/audio/f/audio-forum/794508/tlv320aic3104-problem
器件型号:TLV320AIC3104您好!
我正在尝试使用 TLV320AIC3104 作为 I2S 在从模式下与 Zynq 进行通信的音频编解码器。
音频信号 以差动方式插入到 LINE1LP/LINE1LM 和 LEFT_LOP/LEFT_LOM。 MCLK、BCLK 和 WCLK 由 Zynq 提供、其值分别为19.2MHZ、1024KHz 和16KHz。 我还将编解码器的 DOUT 和 DIN 信号短接、以查看扬声器输出端(LEFT_LOP/LEFT_LOM)的 mic (LINE1LP/LINE1LM)的输入信号。
I2C 寄存器如下所示。图示也是。
我的问题是 、 当我用10kHz 正弦信号馈入输入 LINE1LP/LINE1LM 引脚时、我在 LINE1LP/LINE1LM 的输出上看不到任何东西。 我使用我在那里写入的值来检查寄存器值、它们是匹配的。 我在为 ADC 加电时看到 DOUT 上的一些东西。 此外、当我将 line1lp/line1lm 信号旁路至 left_lop/left_LOM 时、我可以正确地看到该信号。 我还可以将信号从 PGA 旁路到 LEFT_LOP/LEFT_LOM、我可以再次正确地看到信号。 我找不到问题、可以帮我吗?
谢谢、此致、
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、PAGE0_SELECT);
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、AUDIO_CODE_RESET、SOFT_RESET);
/*采样率和主时钟频率*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、2、0x44);/* 0xAA = 8kHz 0x44 = 16kHz 0100:DAC FS = FS (ref)/3 *
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、4、(5<<2));/*J 值= 5*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID,5,(1200>>6));/* 14位 D*/的大多数8位
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、6、(1200和0x3F)<<2);/* 14位 D*/的至少6位
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、11、1);/* R = 1*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、3、0x81);/* PLL 禁用 P=1、Q=16?(CLKDIV_OUT)*
/*采样率和主时钟频率*/
/*位数和数字音频格式*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、8、0x00);/* BCLK 和 WCLK 是输入引脚*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、9、0);/* I2S 模式、音频数据字长度= 16位*/
/*位数和数字音频格式*/
/*通过 AIC3104的信号路径*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、19、0x84);//将 Line1LP 路由到左侧 ADC、为左侧 ADC 加电、全差分模式*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、15、0x00);//取消左 PGA 的静音,将增益设置为0dB*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、7、0x08); //将左侧数据路由到左侧 DAC*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID,37,0x80);//为左侧 DAC 加电*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、43、0x00);//取消左侧数字音量控制静音,将增益设置为0dB*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、82、0x80);//将左侧 DAC 输出路由到左侧线输出*/
AUDIO_CODE_WRITE_DATA_reg (AUDIO_CODE_TLV_320_I2C_ID、86、0x09);//为左侧线路输出加电±(差分),将增益设置为0dB*/