使用双线性变换法获取的系数怎么和STM32的滤波器函数关联?
求助大佬,使用双线性变换法,获得的系数怎么带入到STM32中?matlab代码如下F= 48000;
f1 = 20.598997;
f2 = 107.65265;
f3 = 737.86223;
f4 = 12194.217;
A1000 = 1.9997;
pi = 3.14159265358979;
NUMs = [ (2*pi*f4)^2*(10^(A1000/20)) 0 0 0 0 ];
DENs = conv(,);
DENs = conv(conv(DENs,),);
= bilinear(NUMs,DENs,Fs);
得到B和A的值如下:
B =
0.2343 -0.4686 -0.2343 0.9372 -0.2343 -0.4686 0.2343
A =
1.0000 -4.1130 6.5531 -4.9908 1.7857 -0.2462 0.0112
使用STM32的IIR滤波器,arm_biquad_cascade_df1_init_f32,请问怎么将以上B和A的系数带入到该函数的pCoeffs?
顶顶顶,求助求助 我们是用matlab的filterDesigner获取,供参考,使用AB参数还是有些套路注意事项的,之前学习摸索了很长时间。
https://www.armbbs.cn/forum.php?mod=viewthread&tid=94547
版主,你好,用filterDesigner怎么实现我上面说的那种双线性变换?我想实现的是用双线性变换法设计IIR滤波器,然后代入STM32的DSP库的IIR滤波器函数 huidefengsy 发表于 2023-6-2 17:00
版主,你好,用filterDesigner怎么实现我上面说的那种双线性变换?我想实现的是用双线性变换法设计IIR滤波 ...
我用的就是arm_biquad_cascade_df1_f32
IIR 滤波器主要有:直接型(也称直接 I 型)、标准型(也称直接 II 型)、变换型、级联型和并联型。
ARM官方提供的这个API属于直接 I 型,直接 I 型 IIR 滤波器是基于二阶 Biquad 级联的方式来实现的 您了解我上面提到的双线性变换法设计IIR滤波器,属于IIR滤波器的哪个类型吗? 我在做声音处理时,使用IIR滤波器,是该用低通还是高通? 目前我是使用的IIR高通滤波器,截止频率为100HZ,在正常环境下,这个高通滤波器可以有效抑制100HZ以下的信号,但是如果给设备输入100Hz以下的信号,我又必须将滤波器去除,总感觉这样不大合理 huidefengsy 发表于 2023-6-2 17:17
您了解我上面提到的双线性变换法设计IIR滤波器,属于IIR滤波器的哪个类型吗?
双线性Z变换法是IIR数字滤波器的设计方法。而直接1型是IIR滤波器的网络结构形式。概念不同。
huidefengsy 发表于 2023-6-2 17:22
我在做声音处理时,使用IIR滤波器,是该用低通还是高通? 目前我是使用的IIR高通滤波器,截止频率为100HZ, ...
音频的处理建议使用专门音频软件;
【音频设计的福音】ST与DSP Concepts合作推出超级强劲的傻瓜式音频软件ST-AudioWea
https://www.armbbs.cn/forum.php?mod=viewthread&tid=27569&fromuid=58
(出处: 硬汉嵌入式论坛)
感谢,我看下试试
页:
[1]