Thread 中讨论的其他器件:TAC5212
工具与软件:
您好!
我尝试评估板上可用的两个 PDM 麦克风(U8和 U7)、但到目前为止尚未成功。
我希望 TAC5212在 GPO1上生成 PDMCLK 并在 GPI1上接收 PDMDAT。
在 GPO1上未观察到时钟。
使用示波器测量:BCLK = 12.288MHz、FSYNC = 48kHz。
下面是 我的当前设置(PPC3)的一些屏幕截图。
提前感谢您的支持。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
您好!
我尝试评估板上可用的两个 PDM 麦克风(U8和 U7)、但到目前为止尚未成功。
我希望 TAC5212在 GPO1上生成 PDMCLK 并在 GPI1上接收 PDMDAT。
在 GPO1上未观察到时钟。
使用示波器测量:BCLK = 12.288MHz、FSYNC = 48kHz。
下面是 我的当前设置(PPC3)的一些屏幕截图。
提前感谢您的支持。
您好!
我曾尝试在 PPC 中设置这些设置、也没有在 GPO1上获得 PDM 时钟输出。 在 EVM 用户指南中、有一段代码、作为使用数字 PDM 麦克风的示例 I2C 命令。 运行该时钟以及将 GPO1设置为 PDM 时钟的"w a0 0c 40"行、可以看到 GPO1上的3.072MHz 时钟、这正是我们所期望的。 查看是否在 PPC3的 I2C 监控器中运行此命令时钟输出。 不要忘记在 GPO1上的两个接线柱之间为 PDMCLK 连接跳线、以便在 GPO1测试点获取信号。
###### 从 DMIC 测试########记录
#目标模式、I2S、32位
#仅主要 ASI、48kHz 采样4x4的倍数
# PDMCLK=GPIO1、PDM Data=GPI1
w a0 00 00 #设置第0页
w a0 01 01 #软件复位
W a0 02 09 #使用 AVDD > 2V 且所有 VDDIO 电平进行唤醒
w a0 0A 41 #将 GPIO1配置为 PDMCLK (驱动高电平和低电平有效)
w a0 0d 02 #将 GPI1配置为输入
w a0 10 50 #将 DOUT 配置为主要 ASI (PASI) DOUT
w a0 13 cc #在 GPI1上配置 PDM 数据、并将通道1数据锁存在负边沿、然后
通道2数据锁存在正边沿上
w a0 19 00 # 1数据输入和1数据输出用于 PASI
w a0 1a 70 # PASI I2S、32位格式
w a0 1e 20 # PASI Ch1 on Left slot 0
W a0 1f 30 # PASI Ch2 on right slot 0
W a0 35 00 # PDM_CLK 是2.8224 MHz 或3.072 MHz
w a0 76 c0 #启用输入 CHL 和 Ch2、禁用输出通道
w a0 78 80 #为 ADC 加电
如果您在这方面需要更多帮助、请告诉我。
此致!
MIR
您好、Mir、
非常感谢您的答复。 确实可以帮助我继续调查这款新器件。
如果我执行您推荐的 I2C 命令、在 GPIO1上测量3.072MHz 的时钟。 然后、使用命令"w a0 0c 41"(而不是"w a0 0c 40")、我在 GPO1上测量3.072MHz 的相同时钟。
在分析了我的设置和 I2C 命令之间的差异后、我发现了以下问题:
1.在 GPIO/中断模式中、我们应该先把输出驱动设置为"低电平有效和高电平有效"、然后再把 GPIO 功能设置为 PDM 时钟输出。 否则"Output Drive"将被禁用并显示为灰色。 请参阅下图。
将 Outptu 驱动器从"HiZ 输出"修改为"低电平有效和高电平有效"后、我在 GPO1上测量到一个约810kHz 的时钟、而不是3.072MHz。
2.为尝试解决该频率问题、我重点介绍了寄存器0x1A (ASI_CFG1)。 读回该寄存器、给我0x00、但预期为0x30、因为在"音频串行总线"选项卡中将字长设置为32位。 将寄存器更新为0x30不能解决频率问题。 当 Word LENight 被设定为32位时、预计为0x00还是0x30?
3. I2C 命令将寄存器0x1F (PASI_TX_CH2_CFG)设置为0x30、从而将位6设置为1。 根据数据报头、位6是保留只读位。 是数据表还是命令错误?
最后、 我尝试了不同的音频串行总线设置(TDM、I2S、32位、16位……) 但没有成功。 也许是 PLL 配置问题:最后一个设置为"Enable Auto Clock Cfgn"(启用自动时钟 Cfgn)。 你怎么看? 您是否能够重现此行为?
您好!
只需运行脚本即可。 PPC3有一个错误、如果您运行脚本、它不会更新 GUI、因此、如果您运行脚本后开始更改 GUI 中的参数、您可能发现了一些其他问题、然后在您开始的同一位置结束。 我们即将推出可解决其中一些问题的新版本、但如果您想查看脚本对器件的作用、获取 GUI 更新方法是运行脚本、然后保持器件插入状态、但重新退出 TAC5212 GUI、然后转至 App Center、重新打开 TAC5212 GUI 并选择使用器件值更新 GUI。 这应该会向您显示该脚本的作用! 您可能认为 Hi-Z 输出不正确、抱歉。 我有新版本的 PPC、因此我的高阻态/低电平有效高电平有效设置在 GUI 中略有不同。 BCLK-FSYNC 比率设置在我的 PPC 中也不同-我完全无法编辑该设置、因为我不是在控制器模式下。 很高兴您得到了解决。
此致!
MIR