matlab低通滤波器库函数代码_FIR滤波器窗函数设计法详细步骤以及Matlab代码

该博客详细介绍了如何使用MATLAB设计FIR I型低通滤波器(14Hz以下)和高通滤波器(8Hz以上),包括滤波器设计的步骤和代码实现。通过kaiser窗函数法,结合selectFirFilterN和FIRItypeIdealpulse函数,创建滤波器,并展示了滤波器的频率响应及滤波后的信号波形和频谱。
摘要由CSDN通过智能技术生成

clear

close all

global Fs

Fs = 360;

load '118m.mat'%mit数据库第118条数据

signal = val(1,100000:111600)/200;

%% 采用FIR I型设计20Hz以下的低通滤波器

fp=14; fs=18;

detap = 0.01;detas = 0.01;

[M,beta] = selectFirFilterN(fp,fs,detap,detas);

N = M+1;

w = kaiser(N,beta);

hd = FIRItypeIdealpulse(fp,fs,N,'low');

h = hd.*w';

% 设计的滤波器

omega = linspace(0,pi,512);

mag = freqz(h,[1],omega);

figure

plot(omega/(2*pi)*Fs,20*log10(abs(mag)));

title('FIR低通(14hz以下)滤波器频率相应');

xlabel('频率');

ylabel('增益(dB)');

%% 采用FIR I型设计8Hz以上的高通滤波器

fp2 = 8; fs2=4;

detap2 = 0.01; detas2 = 0.01;

[M2,beta2] = selectFirFilterN(fp2,fs2,detap2,detas2);

N2 = M2

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值