ST意法半导体
直播中

李微波

7年用户 902经验值
私信 关注
[问答]

使用MEMS1麦克风流式传输示例出错有谁知道是哪里出问题了吗?

我正在尝试使用 MEMS1 麦克风流式传输示例,带有 4 个 pdm 麦克风和一个 STM32wb55。我能够使用它在所有麦克风上获得每个样本 48kHz 16 位,没有任何问题。
但是当我尝试为每个样本使用 24 位时(我不确定我应该如何设置 24 位深度但没有在代码中找到与分辨率相关的任何其他部分):

我在 Audacity 上获取的音频是错误的:

前两个通道充满声音,第三个通道是聋的,第四个通道工作正常。
我试过每个样本 32 位,没有问题。知道出了什么问题吗?我没有编辑代码。
我做了同样的测试,但只使用了两个麦克风,结果是一样的:第一个通道充满声音,第二个通道正常工作。





回帖(1)

李晔皓

2022-12-9 14:18:14
Microphones Streaming 示例中使用的 PDM 库和音频 USB 类均不适用于 24 位分辨率。这是因为我们几乎所有的麦克风(包括安装在 X-NUCLEO-CCA02M2 上的那个)都具有仅适合 16 位的 SNR。
只有 1 个 p/n 可以支持 24 位分辨率 (MP23DB01HP)。它安装在 STEVAL-MIC006V1 上,可用作 X-NUCLEO-CCA02M2 顶部的附加组件,具有用户手册中所述的正确跳线配置。要支持它,您需要使用适当的音频 USB 类 (HP_AUDIO) 构建您自己的自定义库 (HP_PDM)。在名为 HPMicrophonesStreaming 的示例中使用和显示的两者,目前仅适用于 F4 和 F7。
实际 X-CUBE-MEMSMIC1 版本中的 WB 示例仅支持 16 位。
您可以通过在 WB 板上移植 F4 示例来构建您自己的应用程序。它计划在下一个正式版本中发布。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分