matlab编程设计FIR低通滤波器
时间: 2023-07-29 07:06:22 浏览: 105
好的,下面是一个基本的 MATLAB 代码实现 FIR 低通滤波器的设计和应用:
```matlab
% 设计FIR低通滤波器
fs = 1000; % 采样频率
fc = 50; % 截止频率
N = 100; % 滤波器阶数
% 计算归一化截止频率
Wn = fc/(fs/2);
% 设计滤波器系数
b = fir1(N,Wn);
% 绘制滤波器幅频特性
freqz(b,1,1024,fs);
% 应用滤波器
x = randn(1,10000); % 生成随机信号
y = filter(b,1,x); % 应用滤波器
```
以上代码中,首先定义了采样频率 `fs`、截止频率 `fc` 以及滤波器阶数 `N`,然后根据式子计算得到归一化截止频率 `Wn`,接着调用 `fir1` 函数根据归一化截止频率和滤波器阶数计算出滤波器系数 `b`,最后使用 `freqz` 函数绘制出滤波器的幅频特性,并用 `filter` 函数将随机信号 `x` 应用到滤波器中,得到滤波后的信号 `y`。
阅读全文