大家好
我们一直在使用 TLV320ADC6140、该器件配置用于2个通过标准 I2S 协议与控制器进行通信的模拟通道。 ADC 芯片被设置为 I2S 总线的主机、并使用12.288MHz 的外部振荡器来生成所需的时钟。 我们希望以48K 样本/秒的速率采集数据 、以32位分辨率采集44.1K 样本/秒的数据。 目前、我们已经测试了48kS/s 的采样率、发现采集48000个样本的总采集时间超过1秒最多10%。
我们已通过使用 I2S 从传感器(MEMS 麦克风)并以48KS/s 的速率采集信号来排除控制器的任何问题。 在这种情况下、我们不会面临这种计时问题。
我们已经尝试在组件出现故障时更换外部振荡器,但这也对我们没有帮助。
请建议如何解决此问题。
以下是我们在这方面使用的寄存器配置:
寄存器0x13 - 0b10000001 //启用主模式、 自动时钟配置、 PLL 启用、 非强制门、FSYNC 倍数= 48、 MCLK=12.288MHz
寄存器0x14 - 0b01000100 // FSYNC=48kHz , BCLK 比率= 64
寄存器0x16 - 0b00001000 //禁用 MCLK_Ratio_SEL , 比率(对于 FREQ_SEL)= 256
寄存器0x21 - 0b10100000 // GPIO 被启用为 MCLK 输入