Fs = 1000; % 采样频率
N = 1024; % 采样点数 ,即实际中一次FFT变换所使用的点数
n = 0:N-1; % 采样序列,为plot绘图用的序列,其对应点表示的真实频率为 f = f = n*(Fs/N),Fs/N,是频率分辨率,其中0 <= N < max(N)/2-1
f = (-N/2:N/2-1)*Fs/N;%真实频率序列,真实频率从(-N/2~(N/2)-1)*(Fs/N)
t = 0:1/Fs:(N/Fs)-1/Fs; % 时间序列

x = 2+3*cos(2*pi*50*t-pi*30/180)+1.5*cos(2*pi*200*t+pi*90/180) ; %原始信号序列

subplot(2,2,1);%绘图 2行2列的第个1框
plot(t,x);%plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线。
grid on;
xlabel('t');
ylabel('y');
title('原始信号');

y = fft(x,N); %对原始信号做N点FFT变换
z = fftshift(y);%对fft结果进行转换,将频率移动的正确的位置
M = abs(z);

subplot(2,2,2);%绘图 2行1列的第2个框
plot(f,M);
grid on;
xlabel('Hz');
ylabel('幅度');%FFT变换后幅度值为原始信号对应频率的幅值*Fs
title('原始信号FFT');

b = fir1(28,0.25);%更多用法查fir1函数说明。fir1(n,Wn),默认选用哈明窗,n是滤波器阶数,Wn是一个归一化频率,在滤波器设计中是用fs/2进行归一。在fir1滤波器设计时采用的是归一化频率。实际采样频率为fs,实际的截止频率为fc,设归一化截止频率为fcm,fcm=fc/(fs/2)。
fir_output = filter(b,1,x);

subplot(2,2,3);%绘图 2行1列的第3个框
plot(t,fir_output);
grid on;
xlabel('t');
ylabel('y');
title('FIR滤波后信号(截止频率为 125 Hz)');

y2 = fft(fir_output,N); %对原始信号做N点FFT变换
z2 = fftshift(y2);%对fft结果进行转换,将频率移动的正确的位置
M2 = abs(z2);

subplot(2,2,4);%绘图 2行1列的第4个框
plot(f,M2);
grid on;
xlabel('Hz');
ylabel('幅度');
title('FIR滤波后信号FFT');

FIR滤波器实例的更多相关文章

  1. IIR滤波器和FIR滤波器的区别与联系zz

      -------------------------------------------------------------------------------------------------- ...

  2. 数字信号处理实验(六)——FIR滤波器的设计

    一.四种线性相位FIR滤波器的振幅响应 1.自编函数 [Hr,w,a,L]=-n) [Hr,w,a,L]=-n) [Hr,w,a,L]=-n) [Hr,w,a,L]=-n) 2.一个demo clea ...

  3. FIR滤波器(1)- 基础知识

    FIR滤波器广泛应用于数字信号处理中,主要功能就是将不感兴趣的信号滤除,留下有用信号.FIR滤波器是全零点结构,系统永远稳定:并且具有线性相位的特征,在有效频率范围内所有信号相位上不失真.在无线通信收 ...

  4. FIR滤波器设计

    FIR滤波器的优越性: 相位对应为严格的线性,不存在延迟失真,仅仅有固定的时间延迟: 因为不存在稳定性问题,设计相对简单: 仅仅包括实数算法,不涉及复数算法,不须要递推运算,长度为M,阶数为M-1,计 ...

  5. CIC and Fir 滤波器的级联

    在FDATool中 CIC 和 Fir 级联滤波器的设计 1 设计CIC滤波器的幅频特性曲线如下 2.设计FIR 滤波器的幅频特性曲线如下 3.总的特性曲线如下 4.把通带部分放大后的图,比较平坦

  6. FIR滤波器的实现方法(转)

    源:http://blog.sina.com.cn/s/blog_493520900102uy26.html 内容来自于上篇博文,第七章,FIR滤波器 http://blog.sina.com.cn/ ...

  7. 使用MATLAB设计FIR滤波器

    1.      采用fir1函数设计,fir1函数可以设计低通.带通.高通.带阻等多种类型的具有严格线性相位特性的FIR滤波器.语法形式: b = fir1(n, wn) b = fir1(n, wn ...

  8. 转载论文关于fir滤波器的fpga实现

    摘 要 本文讨论的FIR滤波器因其具有严格的线性相位特性而得到广泛的应用.在工程实践中,往往要求信号处理具有实时性和灵活性,本论文研究FIR的FPGA解决方案正体现了电子系统的微型化和单片化. 本论文 ...

  9. FIR滤波器的FPGA实现方法

    FIR滤波器的FPGA实现方法 2011-02-21 23:34:15   来源:互联网    非常重要的基本单元.近年来,由于FPGA具有高速度.高集成度和高可靠性的特点而得到快速发展.随着现代数字 ...

随机推荐

  1. 掷骰子游戏窗体实现--Java初级小项目

    掷骰子 **多线程&&观察者模式 题目要求:<掷骰子>窗体小游戏,在该游戏中,玩家初始拥有1000的金钱,每次输入押大还是押小,以及下注金额,随机3个骰子的点数,如果3个骰 ...

  2. December 24th 2016 Week 52nd Saturday

    The first step is as good as half over. 第一步是最关键的一步. If one goes wrong at the first steps, what shoul ...

  3. WinRAR(5.21)-0day漏洞-始末分析

    0x00 前言 上月底,WinRAR 5.21被曝出代码执行漏洞,Vulnerability Lab将此漏洞评为高危级,危险系数定为9(满分为10),与此同时安全研究人员Mohammad Reza E ...

  4. 6、Node.js 事件循环

    #########################################################################################Node.js 事件循 ...

  5. BZOJ 1036 树的统计Count 树链剖分模板题

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1036 题目大意: 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将 ...

  6. How Flask Routing Works

    @How Flask Routing Works The entire idea of Flask (and the underlying Werkzeug library) is to map UR ...

  7. Gluon 参数读取

    ndarray: save , load from mxnet import nd from mxnet.gluon import nn x = nd.ones(3) # nd.save('x',x) ...

  8. [CQOI2006]凸多边形(半平面相交)

    嘟嘟嘟 本来我要写feng shui这道题的.然后网上都说什么半平面相交,于是我还得现学这个东西,就来刷这道模板题了. 所谓的半平面相交和高中数学的分数规划特别像.比如这道题,把每一条边看成一条有向直 ...

  9. ValueError: Invalid leaf XXX

    Bug:ValueError: Invalid leaf XXX 无效的搜索条件——检查search函数中的domain表达式格式!是否少了括号! search(['user_id', '=', us ...

  10. 【jQuery】Deferred(延迟)对象

    本文针对jQuery-todolist项目中使用到的Deferred(延迟)对象进行具体分析 $.Deferred() 是一个构造函数,用来返回一个链式实用对象方法来注册多个回调,并且调用回调队列,传 ...