STM32/STM8技术william hill官网
直播中

yongxiang yang

6年用户 11经验值
擅长:测量仪表,嵌入式技术,控制/MCU,RF/无线
私信 关注
[问答]

STM32L4的DFSDM外设采集PDM数字MIC后的数据

在采集48KHZ 16bit 2CH的MIC数据时。在配置DFSDM外设时。输入MIC的时钟3.072Mhz,滤波器阶数sinc4,过采样率64,积分器1,右移位1,此时DFSDM的滤波器输出24bit的原始数据(PCM)。

在线debug的方式查看内存中的值,
疑问一:在普通环境下也会有一些值,基本不变,这些值是否理解为噪声?将这些采样数据通过UAC发到PC端播放也全是噪声
疑问二:在MIC附近播放音乐,查看内存中的数据,最高的4bit基本不会变动?
疑问三:DFSDM采样后滤波器的数据是否还要通过软件算法处理,还是直接就能使用的数据?

使用过的各位大侠给点参考和思路。

奖励30积分

回帖(1)

kmno4

2024-9-3 12:23:42
在STM32L4系列微控制器中,DFSDM(Digital Filter Sigma-Delta Modulator)外设是一种高精度的模数转换器,常用于音频信号的采集。针对您的问题,我将逐一进行解答:

疑问一:在普通环境下也会有一些值,基本不变,这些值是否理解为噪声?

这些基本不变的值可能是由于多种原因造成的,包括但不限于:

1. 环境噪声:周围环境中的电磁干扰、射频干扰等可能导致ADC采集到的信号中包含噪声。
2. 威廉希尔官方网站 噪声:威廉希尔官方网站 设计中的布线、电源、接地等因素可能导致噪声。
3. DFSDM内部噪声:DFSDM内部的模数转换过程也可能引入一定的噪声。

为了减少噪声,您可以尝试以下方法:

- 使用高质量的电源和稳定的电源供应。
- 优化威廉希尔官方网站 设计,减少布线和接地问题。
- 在软件中应用滤波算法,如中值滤波、卡尔曼滤波等,以减少噪声的影响。

疑问二:在MIC附近播放音乐,查看内存中的数据,最高的4bit基本不会变动?

这可能是由于DFSDM的量化误差或ADC的分辨率限制导致的。在这种情况下,您可以尝试以下方法:

- 增加过采样率,以提高信号的分辨率。
- 使用更高精度的ADC或更换性能更好的MIC。
- 在软件中应用更高级的信号处理算法,如动态范围扩展等。

疑问三:DFSDM采样后滤波器的数据是否还要通过软件算法处理,还是直接就能使用的数据?

DFSDM采样后的数据通常需要经过一定的软件处理才能用于实际应用。这些处理可能包括:

1. 数字滤波:去除信号中的高频噪声。
2. 动态范围压缩:调整信号的动态范围,以适应不同的应用场景。
3. 音频效果处理:如混响、回声等音频效果的添加。

具体需要进行哪些处理取决于您的应用需求。在某些情况下,DFSDM的滤波器输出数据可能已经足够用于直接播放,但在其他情况下,可能需要进一步的软件处理以满足特定的性能要求。

总之,DFSDM外设在音频信号采集方面具有很高的性能,但实际应用中可能需要结合硬件设计和软件算法来优化性能。希望这些解答对您有所帮助。
举报

更多回帖

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