TI论坛
直播中

张辉

7年用户 1352经验值
私信 关注
[问答]

tlv320aic32x4芯片播放模式时,用示波器i2s接口上有波形信号HPL上没有波形输出怎么解决?

mclk为12.288MHz,

用adb执行如下命令播放48K_16bit_stereo.wav时,寄存器配置如下log:
tinymix "QUAT_MI2S_RX Audio Mixer MultiMedia1" "1"
tinymix "HPL Output Mixer L_DAC Switch" "1"
tinymix "HP DAC Playback Switch" "1"
tinyplay /sdcard/48K_16bit_stereo.wav

log:
[aic32x4] aic32x4_write page =  1, reg =    c(012), val =    8    //Left Channel DAC reconstruction filter's positive terminal is routed to HPL
[aic32x4] aic32x4_write page =  1, reg =  10(016), val =    0    //HPL driver gain is 0dB
[aic32x4] aic32x4_write page =  1, reg =  11(017), val =    0    //HPR driver gain is 0dB
[aic32x4] aic32x4_write page =  0, reg =  40(064), val =   12   //Left DAC Channel muted,Right DAC Channel muted
[aic32x4] aic32x4_write page =  0, reg =    4(004), val =    3    //PLL Clock is CODEC_CLKIN
[aic32x4] aic32x4_write page =  0, reg =  1d(029), val =    1    //BDIV_CLKIN = DAC_MOD_CLK
[aic32x4] aic32x4_write page =  0, reg =    5(005), val =   17   //PLL divider P Value 1,PLL divider R Value 1
[aic32x4] aic32x4_write page =  0, reg =    6(006), val =    8    //PLL divider J value 8
[aic32x4] aic32x4_write page =  0, reg =    7(007), val =    7    //PLL divider D value (MSB) 7
[aic32x4] aic32x4_write page =  0, reg =    8(008), val =  128  //PLL divider D value (LSB) 128
[aic32x4] aic32x4_write page =  0, reg =    b(011), val =    2    //NDAC Value 2
[aic32x4] aic32x4_write page =  0, reg =    c(012), val =    8    //MDAC Value 8
[aic32x4] aic32x4_write page =  0, reg =    d(013), val =    0    //DAC OSR (DOSR) Setting MSB
[aic32x4] aic32x4_write page =  0, reg =    e(014), val =  128  //DAC OSR (DOSR) Setting LSB 128
[aic32x4] aic32x4_write page =  0, reg =  12(018), val =    2    //NADC Value 2
[aic32x4] aic32x4_write page =  0, reg =  13(019), val =    8    //MADC Value 8
[aic32x4] aic32x4_write page =  0, reg =  14(020), val =  128  //128(Use with PRB_R1 to PRB_R6, ADC Filter Type A)
[aic32x4] aic32x4_write page =  0, reg =  1e(030), val =    4    //BCLK N Divider value 4
[aic32x4] aic32x4_write page =  0, reg =  1b(027), val =    0    //Audio Interface = I2S  Data Word length = 16 bits BCLK is input to the device WCLK is input to the
[aic32x4] aic32x4_write page =  0, reg =   3f(063), val =  148  //Left DAC Channel Powered Up,Left DAC data Left Channel Audio Interface Data,Soft-Stepping is 1
[aic32x4] aic32x4_write page =  1, reg =    9(009), val =   32   //HPL is powered up
[aic32x4] aic32x4_write page =  0, reg =    5(005), val =  145  //PLL is powered up,PLL divider P Value 1,PLL divider R Value 1
[aic32x4] aic32x4_write page =  0, reg =    b(011), val =  130  //NDAC divider powered up,NDAC Value 2
[aic32x4] aic32x4_write page =  0, reg =    c(012), val =  136  //MDAC divider powered up,MDAC Value 8
[aic32x4] aic32x4_write page =  0, reg =  12(018), val =  130  //NADC divider powered up,NADC Value 2
[aic32x4] aic32x4_write page =  0, reg =  13(019), val =  136  //MADC divider powered up,MADC Value 8
[aic32x4] aic32x4_write page =  0, reg =  1e(030), val =  132  //BCLK N divider powered up,BCLK N Divider value 4
[aic32x4] aic32x4_write page =  0, reg =  40(064), val =    0    //Left and Right Channel have independent volume control, not muted


回帖(2)

李丽波

2024-10-17 16:37:36
开机过程aic32x4_probe时增加配置电源后解决,
[aic32x4] aic32x4_write page =  1, reg =   2(002), val =   9(   9)       //Power up AVDD LDO
[aic32x4] aic32x4_write page =  1, reg =   1(001), val =   8(   8)        //Disable weak AVDD in presence of externa AVDD supply
[aic32x4] aic32x4_write page =  1, reg =   2(002), val =   1(   1)        //Enable Master Analog Power Contro,Power up AVDD LDO
举报

刘丹

2024-10-18 09:13:28
根据您的描述,您在使用tlv320aic32x4芯片进行播放模式时,遇到了I2S接口上有波形信号,但HPL上没有波形输出的问题。以下是一些建议和步骤,以帮助您解决这个问题:

1. 检查硬件连接:确保I2S接口和HPL接口的硬件连接正确,包括数据线、时钟线和地线。检查是否有松动或损坏的连接。

2. 检查I2S配置:确保I2S接口的配置正确,包括采样率、位深度和通道数。在您的示例中,您使用的是48kHz采样率和16位位深度的立体声音频文件。请确保这些参数与您的硬件和软件配置相匹配。

3. 检查AIC32x4寄存器配置:根据您提供的日志,您已经配置了左通道DAC重建滤波器。请确保其他相关寄存器也已正确配置,例如:

   - 设置I2S模式:确保AIC32x4的I2S模式已启用,并且配置为正确的模式(例如,I2S、左对齐或右对齐)。
   - 设置采样率:确保AIC32x4的采样率与您的音频文件相匹配。在您的例子中,采样率为48kHz。
   - 设置位深度:确保AIC32x4的位深度与您的音频文件相匹配。在您的例子中,位深度为16位。

4. 检查音量设置:确保音量设置正确,包括AIC32x4的音量和您的设备的音量。如果音量设置过低,可能会导致音频信号无法被听到。

5. 检查音频文件:确保您的音频文件没有问题,例如损坏或格式不正确。您可以尝试播放其他音频文件,看看问题是否仍然存在。

6. 检查软件驱动:确保您的软件驱动正确安装并配置。您可以尝试更新或重新安装驱动程序,以确保它们是最新的。

7. 检查设备兼容性:确保您的设备与AIC32x4芯片兼容。如果设备不兼容,可能会导致音频信号无法正确播放。

通过遵循这些建议和步骤,您应该能够解决I2S接口上有波形信号,但HPL上没有波形输出的问题。如果问题仍然存在,请考虑寻求专业技术支持。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分