TI论坛
直播中

五斤麻辣油

8年用户 1261经验值
擅长:电源/新能源
私信 关注
[问答]

PCM1690 TDM8模式不出声音是怎么回事?


  • PCM1690接收的信号是从DSP给出的TDM8,用示波器测量信号,MCLK :24.576MHz,BCLK:12.288MHz,LRCLK:48KHz, DATA 线上也能看到音乐的波形;在PCM1690输出端没有量到输出信号。请帮忙看一下,谢谢!
    TDM时的配置
             PCM1690 初始化如下:
    void Pcm1690_Init(void)
    {    DAC_MSG("rn Pcm1690_Init!rn");   
        PCM1690_RST(OUTPUT_LOW);
        HAL_DelayMs(10);
        PCM1690_RST(OUTPUT_HIGH);
        HAL_DelayMs(10);   
         //Pcm1690Write_i2c(0x40,0xc0);//use default
         Pcm1690Write_i2c(0x41,0x86);//disable power save , tmd i2s
         //Pcm1690Write_i2c(0x42,0x00);//use default DAC power save and roll-off
         //Pcm1690Write_i2c(0x43,0x00);//use default DAC normal or inverted
         //Pcm1690Write_i2c(0x44,0x00);//use default soft mute each channel
         //Pcm1690Write_i2c(0x45,0x00);//use default zero flag
         Pcm1690Write_i2c(0x46,0x02);//DAMS(BIT7)=0
         //0x47 no use
         Pcm1690Write_i2c(0x48,0xff);//DAC1 VOLUME  0xff: 0db  0x00 MUTE STEP 0.5db(DAMS=0) or 1db(DAMS=1)
         Pcm1690Write_i2c(0x49,0xff);//DAC2 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4A,0xff);//DAC3 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4B,0xff);//DAC4 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4C,0xff);//DAC5 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4D,0xff);//DAC6 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4E,0xff);//DAC7 VOLUME  0xff: 0db  0x00 MUTE
         Pcm1690Write_i2c(0x4F,0xff);//DAC8 VOLUME  0xff: 0db  0x00 MUTE
    }

回帖(2)

李洁

2024-10-18 14:39:37
 TDM  模式的话,时序正常吗? 对比数据手册测量下TDM的时序呢。
举报

微风挽雨

2024-10-18 17:48:47
根据您提供的信息,PCM1690在TDM8模式下没有输出声音。您已经测量了MCLK、BCLK和LRCLK的频率,以及DATA线上的音乐波形。在这种情况下,我们可以按照以下步骤进行故障排除:

1. 检查PCM1690的初始化配置:确保您已经正确配置了PCM1690的寄存器,以支持TDM8模式。请参考PCM1690的数据手册,确保您已经设置了正确的寄存器值。

2. 检查信号完整性:请确保从DSP到PCM1690的信号路径没有受到干扰或损坏。您可以使用示波器检查信号的完整性,确保信号在传输过程中没有失真或衰减。

3. 检查电源和地线:请确保PCM1690的电源和地线连接正确且稳定。不稳定的电源或地线连接可能导致设备无法正常工作。

4. 检查输出端:请检查PCM1690的输出端是否连接到正确的设备(例如扬声器或耳机)。同时,请确保输出端的阻抗匹配,以避免信号损失。

5. 检查DSP的配置:请确保DSP已经正确配置,以支持TDM8模式。请参考DSP的数据手册,确保您已经设置了正确的寄存器值。

6. 检查代码逻辑:请检查您的代码逻辑,确保在初始化PCM1690之后,您已经正确地启动了音频数据的传输。同时,请确保您的代码没有导致任何死锁或异常。

7. 使用调试工具:如果可能的话,使用调试工具(例如逻辑分析仪或示波器)来观察PCM1690的内部信号,以确定问题所在。

8. 尝试其他音频数据:请尝试使用不同的音频数据,以排除音频数据本身的问题。

9. 检查硬件:如果以上步骤都无法解决问题,可能是PCM1690硬件本身存在问题。您可以尝试更换一个新的PCM1690芯片,以排除硬件故障的可能性。

通过以上步骤,您应该能够找到导致PCM1690在TDM8模式下没有输出声音的原因,并采取相应的措施解决问题。希望这些建议对您有所帮助!
举报

更多回帖

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