用matlab设计一个低通滤波器FIR,要求采样频率是20kHZ,通带截止频率为4khz,过渡带2kHZ,通带纹波系数小于3dB,阻带衰减大于40dB
时间: 2023-07-16 21:15:22 浏览: 100
以下是一种设计低通FIR滤波器的方法,对于所给的要求,我们可以采用 Parks-McClellan 算法进行设计。具体步骤如下:
1. 通过指定通带截止频率和过渡带宽度,计算出通带和阻带边界频率。
```matlab
fs = 20000; % 采样频率
Rp = 3; % 通带最大纹波
Rs = 40; % 阻带最小衰减
wp = 2*pi*4000/fs; % 通带截止频率
ws = 2*pi*6000/fs; % 阻带截止频率
delta_p = (10^(Rp/20)-1)/(10^(Rp/20)+1); % 通带纹波系数
delta_s = 10^(-Rs/20); % 阻带衰减系数
```
2. 通过 `firpmord` 函数计算出滤波器的阶数和截止频率。
```matlab
[n,fo,ao,w] = firpmord([wp ws]/pi,[1 0],[delta_p delta_s],fs);
```
3. 调用 `firpm` 函数进行滤波器设计。
```matlab
b = firpm(n,fo,ao,w);
```
4. 绘制滤波器的幅频响应和相频响应。
```matlab
freqz(b,1,1024,fs);
```
完整代码如下:
```matlab
fs = 20000; % 采样频率
Rp = 3; % 通带最大纹波
Rs = 40; % 阻带最小衰减
wp = 2*pi*4000/fs; % 通带截止频率
ws = 2*pi*6000/fs; % 阻带截止频率
delta_p = (10^(Rp/20)-1)/(10^(Rp/20)+1); % 通带纹波系数
delta_s = 10^(-Rs/20); % 阻带衰减系数
[n,fo,ao,w] = firpmord([wp ws]/pi,[1 0],[delta_p delta_s],fs);
b = firpm(n,fo,ao,w);
freqz(b,1,1024,fs);
```
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)