主题中讨论的其他器件: TLV320ADC3001
您好!
目前、我正在使用此 EVM 的板载麦克风(原理图上是 MK1)、并使用 STM32微控制器查看生成的信号。 因此、基本上 STM32应触发 EVM 以从板载麦克风获取信号、并通过 I2S 协议连续发送数据。 这是我的 STM32与 EVM 之间的接口:
_________________________________
SCL | |
---------------------------------- | |
SDA |
---------------------------------- | |
| |
MCLK |
---------------------------------- | TLV320AIC3204EVM-K |
BCLK |
---------------------------------- | |
WCLK | |
---------------------------------- | |
DOUT |
---------------------------------- | |
DGND |
---------------------------------- |_________________________ |
我的 STM32使用24MHz 时钟、用于 MCLK 和 BCLK 引脚。 接口之间未添加任何附加组件。 我参考以下链接获取原理图:
此外、我将所有跳线和开关状态保留为默认值。 根据原理图、此配置应连接到板载麦克风。
对于通过 I2C 进行寄存器设置、我使用本文档的第90页 (StereoADCwith48kspsSampleRateandHighPerformance)。
我将 NADC 寄存器的值更改为2 (在示例中为1)、因为我使用24MHz 时钟(大约是示例中时钟值的两倍)。 我从 TLV320ADC3001数据表中知道、我只需要满足以下条件:
2.8MHz < AOSR x ADC_FS < 6.2MHz
ADC_CLKIN = NADC x mAdc x AOSR x ADC_FS
mAdc x AOSR /32 >= RC
但是、当我尝试执行此操作时、STM32通过 I2S DOUT 引脚读取的值似乎不正确。 这些值是随机的、大部分为零。 即使我向车载麦克风提供一些振动/声音、也没有变化。 请帮我找到此问题的解决方案。
是连接问题还是跳线和开关设置还是寄存器设置?
此致、
Arya