matlab编写程序设计参数αs=40dB,αp=1dB,wp=0.25π,ws=0.5π的FIR数字低通滤波器
时间: 2023-11-21 08:06:20 浏览: 126
基于matlab的FIR低通滤波器设计
好的,以下是 MATLAB 代码实现:
```matlab
% 设计参数
alpha_s = 40; % 阻带衰减
alpha_p = 1; % 通带波纹
wp = 0.25*pi; % 通带截止频率
ws = 0.5*pi; % 阻带截止频率
% 根据设计参数计算滤波器阶数
delta_p = (10^(0.05*alpha_p)-1)/(10^(0.05*alpha_p)+1);
delta_s = 10^(-0.05*alpha_s);
A = -20*log10(delta_p*delta_s);
N = ceil((A-8)/(4.57*(ws-wp)));
% 计算截止频率
wc = (ws+wp)/2;
% 计算滤波器系数
n = 0:N;
h = wc/pi*sinc(wc/pi*(n-N/2));
w = hamming(N+1)';
h = h.*w;
```
注:此处使用了汉明窗对滤波器进行了窗口函数设计,可根据需要更改为其他窗口函数。
阅读全文