LAT1099
Local Application Tips
LAT1099 – Rev 1.0 – Jan. 2022
DFSDM 时钟配置问题
关键字:DFSDM, 时钟
引言
DFSDM 全称为 Digital filter for sigma delta modulators。顾名思义,其作用主要是对
外部 Σ∆调制的数字信号进行滤波。STM32L462xx 系列支持最多 4 个外部串行通道,2 个
数字滤波器,最大可达到 24bit 的 ADC 分辨率。并且支持 SPI 接口和曼切斯特编码 1-wire
接口。
1. 问题描述
客户在使用 STM32L462xx 的 DFSDM 连接数字麦克风,将数字麦克风的 PDM 信号转
化为 PCM 信号,并采集数据。使用的参数为 16KHz 采样,2M 左右的时钟驱动数字麦克
风,能够正常读取麦克风数据。了解到他们所使用的数字麦克风可以使用 768K 时钟驱
动,从而达到更低功耗的状态,但是客户无法配置出合适的时钟,并且勉强配置到了
768K 附近,通过 DFSDM 采集到的数据也是混乱的,完全无法解析。
2. 问题分析与定位
在了解到基本需求后,我们需要对 DFSDM 的时钟有一定了解。从 RM0394 参考手册
中可以找到如下内容:
图1. DFSDM 时钟
DFSDM 可以提供一个时钟用于驱动外部 sigma delta 调制器,并且时钟来源可以是
DFSDM 时钟或者 Audio 时钟,其中 Audio 时钟就是 SAI1 的时钟。
在处理和时钟相关的配置问题时,强烈建议使用 CubeMX 的时钟配置界面进行配置。
我们先来看下客户用于驱动外部数字麦克风的时钟配置。