用频率采样法设计FIR数字滤波器的基本方法有哪几种
时间: 2023-10-31 19:06:19 浏览: 92
用频率采样法设计FIR数字滤波器的基本方法有以下两种:
1. 理想低通滤波器转换法
理想低通滤波器转换法的基本思想是将所要设计的数字滤波器从时域转换到频域,然后通过对理想低通滤波器的采样来实现数字滤波器的设计。
理想低通滤波器转换法的程序语句如下:
```matlab
% 设计FIR数字滤波器
fs = 1000; % 采样频率
fpass = 200; % 通带截止频率
fstop = 300; % 阻带截止频率
Rp = 1; % 通带最大衰减
Rs = 40; % 阻带最小衰减
wp = 2*pi*fpass/fs; % 通带归一化角频率
ws = 2*pi*fstop/fs; % 阻带归一化角频率
Wp = 1; % 通带归一化频率
Ws = ws/wp; % 阻带归一化频率
N = ceil(3.3*pi/(ws-wp));% 滤波器阶数
h = fir1(N, Ws, 'low'); % 采样后的理想低通滤波器
freqz(h, 1, 512, fs); % 绘制滤波器频率响应
```
2. 频率抽样法
频率抽样法的基本思想是利用周期性采样的方法将模拟滤波器的频率响应转换为数字滤波器的频率响应。
频率抽样法的程序语句如下:
```matlab
% 设计FIR数字滤波器
fs = 1000; % 采样频率
fpass = 200; % 通带截止频率
fstop = 300; % 阻带截止频率
Rp = 1; % 通带最大衰减
Rs = 40; % 阻带最小衰减
wp = 2*pi*fpass/fs; % 通带归一化角频率
ws = 2*pi*fstop/fs; % 阻带归一化角频率
Wp = 1; % 通带归一化频率
Ws = ws/wp; % 阻带归一化频率
N = ceil(3.3*pi/(ws-wp));% 滤波器阶数
k = 0:N-1; % 抽样点
wk = (2*pi*k)/(N*2); % 抽样频率
h = (sin(wc*(k-N/2)))./(pi*(k-N/2)); % 抽样后的频率响应
h(N/2+1) = wc/pi; % 抽样后的中心点值
freqz(h, 1, 512, fs); % 绘制滤波器频率响应
```
注意:以上程序语句中,`fir1`函数用于设计FIR数字滤波器,`freqz`函数用于绘制滤波器的频率响应。具体函数使用方法可以在MATLAB帮助文档中查看。