用matlab设计一个采用汉明窗的数字FIR低通滤波器
时间: 2024-05-22 12:14:46 浏览: 45
步骤如下:
1. 确定滤波器的参数,包括滤波器长度N、截止频率fc、采样率fs等。
2. 计算出滤波器的理想频率响应,即低通滤波器的理想幅度响应Hd和相位响应。
3. 在matlab中使用fir1函数设计FIR滤波器,输入参数包括滤波器长度N、截止频率fc和窗函数类型(这里选择汉明窗)。
4. 绘制滤波器的幅度响应和相位响应曲线,以及滤波器的单位脉冲响应h(n)。
以下是matlab代码示例:
% 设置滤波器参数
N = 51; % 滤波器长度
fc = 0.2; % 截止频率
fs = 1; % 采样率
% 计算理想频率响应
M = (N-1)/2;
n = 0:N-1;
hd = 2*fc*sinc(2*fc*(n-M));
h = hd.*hamming(N)';
Hd = fft(hd);
H = fft(h);
% 设计FIR滤波器
h_fir = fir1(N-1, fc, 'low', hamming(N));
% 绘制滤波器响应曲线
w = linspace(0, pi, 1000);
Hd_w = 2*fc*sinc(2*fc*(w-pi/2));
H_fir = freqz(h_fir, 1, w);
figure;
subplot(2,1,1);
plot(w/pi, abs(Hd_w), 'r--', w/pi, abs(H), 'b-', w/pi, abs(H_fir), 'k-');
xlabel('Normalized frequency (\times\pi rad/sample)');
ylabel('Magnitude');
legend('Ideal', 'Hamming', 'FIR');
title('Frequency Response');
subplot(2,1,2);
plot(w/pi, unwrap(angle(Hd_w)), 'r--', w/pi, unwrap(angle(H)), 'b-', w/pi, unwrap(angle(H_fir)), 'k-');
xlabel('Normalized frequency (\times\pi rad/sample)');
ylabel('Phase (rad)');
legend('Ideal', 'Hamming', 'FIR');
title('Phase Response');
% 绘制滤波器单位脉冲响应曲线
figure;
stem(0:N-1, h);
hold on;
stem(0:N-1, h_fir, 'r--');
xlabel('n');
ylabel('Amplitude');
legend('Ideal', 'FIR');
title('Impulse Response');
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)