主题中讨论的其他器件: TLV320AIC3106
工具/软件:Linux
我在一个项目上使用 TLV320AIC3106EVM-K、并使用 I2C/MCASP 进行通信和控制。 它通过 BeagleBone Black 上的定制线束连接并播放音频。 我的问题是、它只能以32KHz 正确播放音频文件。 当我尝试播放8kHz 的声音时,它会以超快的速度回放...就像4倍的速度(8 kHz 的声音文件以32kHz 的速度播放)。
当我转到 TI 创建的 Sitara EVM 时、它会正确回放任何音频文件(无论频率如何)。 我知道这是一个特殊的 Yacto OS、称为 Arago。 两者都基于 Linux。
要使用 TLV320、我只需在 BeagleBone Black 启动期间使用标准 BB-Bone-02-00A0.DTS 覆层。
我查看了我正在使用的 TLV320的规格表、并通过寄存器更改从8kHz 到96kHz 音频采样的分频值。 Sitara 是如何实现的? 编译时是否已将其设置到 Sitara 上的编解码器驱动程序中? 如果可以在 Sitara 上动态完成(编解码器读取音频文件头并以适当的速度回放)、为什么我不能使用我的设置来执行它? 我缺少什么?