主题中讨论的其它部件:PCM2706,,, TAS5733LEVM
您好,
我已经制作了自己的演示材料,用于验证I2S通信,动力侧未建立,这已确认在相关线程中有效。 在同一I2S总线上,有一个Adafruit 3线I2S放大器,可在播放I2S流时为扬声器发出美妙的声音。
我正在为TAS提供一个来自PCM2706,FS=44.1kHz,16位,SCLK=64*FS的3线I2S流。 TAS5713的MCLK引脚与SCLK引脚相连,因此它可以看到MCLK = SCLK = 64*FS的I2S流。 因此,根据TAS5713数据表的第43页,芯片应识别该数据流并相应地将寄存器0x00从0x6C (默认通电值)更新为0x60。 但它没有。 我可以手动向它写入0x60并将其读回来,但我想看到芯片正在执行此操作! 可能需要MCLK和SCLK之间的相移?
通过I2C与TAS5713的通信似乎已启动并正在运行。 根据TAS5713数据表,所有寄存器均显示其默认值。 但是在我的嵌入式Linux软件包中,芯片位于地址0x1b的i2c-bus上,而不是0x34,这仍然让我有点困惑。 设备ID寄存器0x02包含0x50,我没有引用它应该是什么。
这里会发生什么?! 感谢您的任何想法。
EJ,最佳