调用MATLAB工具箱函数fir1设计线性相位低通FIRDF,要求希望逼近的理想低通滤波器通带截止频率wc = pi/3 rad,滤波器长度N = 25。分别选用矩形窗、汉宁窗、哈明窗和布莱克曼窗进行设计,绘制用每种窗函数设计的单位脉冲响应h(n)及其幅频特性曲线,代码
时间: 2023-12-10 16:38:45 浏览: 198
FIRsim_MATLAB仿真_FIR滤波器_低通滤波器_matlab_FIRmatlab
以下是MATLAB代码实现:
```matlab
% 理想低通滤波器通带截止频率
wc = pi/3;
% 滤波器长度
N = 25;
% 设计矩形窗滤波器
h_rect = fir1(N-1, wc/pi, 'low', rectwin(N));
freqz(h_rect);
% 设计汉宁窗滤波器
h_hamming = fir1(N-1, wc/pi, 'low', hamming(N));
freqz(h_hamming);
% 设计哈明窗滤波器
h_hanning = fir1(N-1, wc/pi, 'low', hanning(N));
freqz(h_hanning);
% 设计布莱克曼窗滤波器
h_blackman = fir1(N-1, wc/pi, 'low', blackman(N));
freqz(h_blackman);
```
其中,`fir1`函数用于设计FIR滤波器,`freqz`函数用于绘制幅频特性曲线。在`fir1`函数中,第一个参数为滤波器长度减一,第二个参数为通带截止频率除以π,第三个参数为滤波器类型(这里选择了低通滤波器),第四个参数为窗函数。
阅读全文