MATLAB生成巴特沃斯滤波器+C语言实现之一(matlab篇)

环境:matlab2014a
工具:Filter Design & Analysis Tool
参数设置如下图:MATLAB生成巴特沃斯滤波器+C语言实现之一(matlab篇)_第1张图片

这里用的是250HZ的采样频率,低通截止频率为20HZ,6阶巴特沃斯滤波器。
设置好参数后,点最下方的“Design Filter”,生成参数。
然后在菜单File下Export导出参数:
MATLAB生成巴特沃斯滤波器+C语言实现之一(matlab篇)_第2张图片
点Export后即可在工作区看到导出的数据Hd.
最后使用命令行将参数转换为C语言可用的参数表:

[b,a]=sos2tf(Hd.sosMatrix,Hd.ScaleValues)
可得到b和a参数表:
b =
1.0e-03 *
0.0231 0.1388 0.3470 0.4627 0.3470 0.1388 0.0231
a =
1.0000 -4.5450 8.7464 -9.0984 5.3862 -1.7181 0.2305

将这些参数带入到C语言中使用即可完成滤波器设计。

你可能感兴趣的:(MATLAB)