我期望在32位浮动正弦波形上有多少THD



我使用stm32f411 uC使用cmsis dsp库生成正弦波正弦波形通过I2S接口馈送音频编解码器我注意到编解码器的模拟输出有很多谐波我在想我的波形有多少THD谢谢

编辑正弦波形是Cmsis dsp库上的波形https://github.com/mikeferguson/stm32/blob/master/libraries/CMSIS/DSP_Lib/FastMathFunctions/arm_sin_f32.c我只需要数字正弦波形加的谐波我正在考虑创建一个由该函数创建的正弦值数组并在matlab

上分析它

给定的音调生成器添加了多少量化噪声和THD,完全取决于它的实现细节,并且不能直接派生。正如您所建议的,在Matlab或类似的环境中分析输出是一种方法。或者,如果您只关心是您的生成器还是模拟部件受到指责,那么更简单的方法可能是生成一个简单的正弦,它是采样频率的一小部分。这可以在没有花哨的CMSIS库的情况下完成,只需在Matlab中预先计算频率为fs/8的正弦函数的一个数组,例如8个样本。然后再做一次THD测量。如果THD仍然很大,那么你的CMSIS生成器不应该受到责备。

的问候克劳斯

最新更新