Other Parts Discussed in Thread: TLV320AIC3104
hi Ti enginner
现在的TBOX项目中使用TLV320AIC3104这款音频解码器,客户反馈电话音量低。请帮忙检查寄存器设置,看是否有问题,并给予整改建议。
电路方案为:4G模组输出PCM音频信号从音频接口输入,输出通道为RIGHT_LOP/M。
下图为EP+、EP-在空闲和电话接通状态下电平变化情况,附件中是初始化和拨打电话时寄存器操作。
部分代码配置如下:
TLV320AIC3104部分代码.txt
初始化TLV320AIC3104: ret |= register_config(0x2, 0xaa); /* PLL Programming Register A */ ret |= register_config(0x3, 0x91); /* PLL Programming Register B */ ret |= register_config(0x4, 0xc0); /* Codec Data-Path Setup Register */ ret |= register_config(0x7, 0x1e); /*Audio Serial Data Interface Control Register B*/ ret |= register_config(0x9, 0x40); /*Audio Serial Data Interface Control Register C*/ ret |= register_config(0xa, 0x01); /*Audio Codec Overflow Flag Register*/ ret |= register_config(0xb, 0x81); /*Audio Codec Digital Filter Control Register*/ ret |= register_config(0xc, 0x5f); /*Page 0/Register 16: Right-ADC PGA Gain Control Register* ret |= register_config(0x10, 0x50); /* MIC1LP/LINE1LP to Left-ADC Control Register */ ret |= register_config(0x13, 0x04); // ret |= register_config(0x15, 0x0); /* MICBIAS Control Register */ ret |= register_config(0x19, 0x86); /* Left-AGC Gain Register */ ret |= register_config(0x20, 0x00); /* Right-AGC Gain Register */ ret |= register_config(0x21, 0x00); /* DAC Power and Output Driver Control Register */ ret |= register_config(0x25, 0xc0); /* Left-DAC Digital Volume Control Register */ ret |= register_config(0x2b, 0x00); /* Right-DAC Digital Volume Control Register */ ret |= register_config(0x2c, 0x00); /* Right-DAC Digital Volume Control Register (continued) * ret |= register_config(0x2f, 0x00); /* HPLOUT Output Level Control Register */ //ret |= register_config(0x33, 0x00); ret |= register_config(0x33, 0x5b); /* 58: HPLCOM Output Level Control Register*/ ret |= register_config(0x3a, 0x07); /* 64: DAC_R1 to HPROUT Volume Control Register */ //ret |= register_config(0x40, 0x80); /* 65: HPROUT Output Level Control Register*/ ret |= register_config(0x41, 0x0f); /* 72: HPRCOM Output Level Control Register */ //ret |= register_config(0x48, 0x07); /*92: DAC_R1 to RIGHT_LOP/M Volume Control Register */ /* ICALL��Ϊһֱ����*/ //ret |= register_config(0x5c, 0x80); ret |= register_config(0x5c, 0x00); /* 9 拨打电话时: ret |= register_config(0x13, 0x04); /* 46: PGA_L to HPLOUT Volume Control Register */ //ret |= register_config(0x2E, 0x00); /* HPLOUT Output Level Control Register */ //ret |= register_config(0x33, 0x00); /* /Register 82: DAC_L1 to LEFT_LOP/M Volume Control Register */ ret |= register_config(0x52, 0x00); /*92: DAC_R1 to RIGHT_LOP/M Volume Control Register */ ret |= register_config(0x5c, 0x80);