本文使用的开发环境为:Win10 Matlab2018a 版本。

在matlab命令窗口输入:filterDesigner命令,即可打开filterDesigner设计工具。

按照下图调整FIR低通滤波器的参数:

我们设计的是采样频率100Hz,截止频率10Hz的8阶FIR低通数字滤波器。

生成matlab函数代码:File—Generate MATLAB Code—Filter Design Function

我在这里将生成的m文件保存为fir_8.m。

在matlab中打开fir_8.m是这个样子的:

代码如下:

function Hd = fir_8

%FIR_8 Returns a discrete-time filter object.

% MATLAB Code

% Generated by MATLAB(R) 9.4 and DSP System Toolbox 9.6.

% Generated on: 09-Apr-2019 11:22:46

% FIR Window Lowpass filter designed using the FIR1 function.

% All frequency values are in Hz.

Fs = 100; % Sampling Frequency

N = 7; % Order

Fc = 10; % Cutoff Frequency

flag = 'scale'; % Sampling Flag

% Create the window vector for the design algorithm.

win = hamming(N+1);

% Calculate the coefficients using the FIR1 function.

b = fir1(N, Fc/(Fs/2), 'low', win, flag);

Hd = dfilt.dffir(b);

% [EOF]

接下来我们要设计一个带噪声的信号函数,然后通过这个滤波器,来测试滤波效果:

在matlab中新建一个脚本,保存为signal.m,与fir_8.m保存在同一文件夹中。

代码如下:

x = 0:0.01:4;%定义400个取样点

y = 0.1*sin(pi*x) +0.1*sin(2*pi*49*x);%设计含有高频信号与低频信号的输入信号

figure(1);

plot(x,y);%画出输入信号图形

title('输入信号');

Hd = fir_8;%引入滤波器,Hd包含了fir_8滤波器的各项参数

d = filter(Hd,y);%通过filter函数将信号y送入参数为Hd的滤波器,输出信号d

figure(2);

plot(x,d);%画出通过滤波器的信号d的波形

title('输出信号');

figure(3);

plot(x,y,'r');%画出输入信号图形

hold on;%保持画出的输入信号图形

plot(x,d,'b');%画出输出信号波形

title('输入/输出信号');

legend('输出信号','输入信号');

运行signal.m(在matlab命令行窗口输入signal即可)

PS: 本文主要参考惠飞《FPGA嵌入式系统开发与实例》第5.4.3节

代码文件下载

matlab低通滤波器库函数代码_利用Matlab filterDesigner 工具生成FIR滤波器函数,并调用实现低通滤波...相关推荐

  1. matlab低通滤波器库函数代码_频域低通滤波器(MATLAB 含代码)

    在频谱中低频主要对应图像在平滑区域的总体灰度级分布,而高频对应图像的细节部分,如边缘和噪声.因此图像平滑可以通过衰减图像频谱中的高频部分来实现,这就建立了空间域图像平滑和频域低通滤波之间的对应关系. ...

  2. matlab低通滤波器库函数代码_Matlab中模拟低通滤波器的函数

    1 besselap 功能:贝塞尔( Bessel )模拟低通滤波器原型. 格式: [z,p,k] = besselap(n) 说明: z . p . k 分别为滤波器的零点.极点和增益, n 为滤波 ...

  3. matlab相关性分析频谱_利用Matlab绘制正弦信号的频谱图并做相关分析[共6页]

    <利用Matlab绘制正弦信号的频谱图并做相关分析[共6页]>由会员分享,可在线阅读,更多相关<利用Matlab绘制正弦信号的频谱图并做相关分析[共6页](6页珍藏版)>请在人 ...

  4. matlab文件名加前缀_利用MATLAB批量对文件重命名

    利用MATLAB批量对文件重命名 tags: - MATLAB - 科研软件 序 没paper,实验肯定要做啊,不做就毕不了业 . 编程这方面,编程是不可能编程的,这辈子不可能编程的 . paper又 ...

  5. matlab相关性分析频谱_利用matlab怎样进行频谱分析、、

    利用 matlab 怎样进行频谱分析 图像的频率是表征图像中灰度变化剧烈程度的指标, 是灰度在平面空间上的 梯度. 如: 大面积的沙漠在图像中是一片灰度变化缓慢的区域, 对应的频率值很 低:而对于地表 ...

  6. java绘制蝴蝶效应曲线代码_利用MATLAB的常微分方程数值解绘制蝴蝶效应(混沌系统)三维曲线图、平面上的投影图...

    一.模型的常微分方程及初值 二.ode45求解函数 function r=hudie3(t,x) global a; global b; global c; a=8/3;b=10;c=28; r=ze ...

  7. matlab 高斯迭代代码_用Matlab编写你的第一个有限元_《数值计算与程序设计》系列课程...

    本课主要分析了有限元的基本理论, 不同于其他学习资料的是本文从数学的角度重新阐述了有限元分析的基本步骤,如通解与特解的讲解,并以一个偏微分方程实例,从基础插值出发,详细地讲解了有限元数学推导的每一步过 ...

  8. matlab 统计数组频数_利用MATLAB进行频率分析(统计数组中元素个数)

    在日常计算,工作中使用MATLAB经常会遇到这样的一个问题:如何统计数组中各数字(元素)出现的频数.频率和累积频率?本文就按照案例演示的方式做一个总结. 第一种方法:调用MATLAB自带的函数tabu ...

  9. matlab计算斜方差_利用matlab进行协方差运算

    本文全部参考自: http://www.cnblogs.com/welen/articles/5535042.html#undefined 知识点一: MATLAB中四个取整函数具体使用方法如下: M ...

最新文章

  1. 【golang程序包推荐分享】go-ini、viper、godoc
  2. 通俗易懂讲解JavaScript深拷贝和浅拷贝
  3. javascript 和 jq 的调试 用console.log() 函数
  4. Swift 和 Objective-C 混编
  5. 本地构建和自动化构建_如何构建最强大,最安全的家庭自动化系统
  6. python需要的基础_推荐收藏!小白不要怕!一周学全Python面试基础(2)
  7. (36)System Verilog类中方法示例
  8. Centos开放查看端口 防火墙关闭打开
  9. Interesting Finds: 2008.04.24
  10. Java网络编程从入门到精通(25):创建ServerSocket对象
  11. VMware虚拟机桥接方式与真实主机共享上网
  12. 在下列集成电路说法中不正确_教孩子正确认识性别,保护个人隐私,对成长中的尴尬行为说不...
  13. 文达仓库管理软件 v5.32 网络版 怎么用
  14. 超详细,wepy小程序如何引入第三方插件wxPano
  15. HERCULE:通过在相关日志图上进行社区发现来重建攻击故事
  16. [附源码]Python计算机毕业设计Django高校社团管理系统
  17. C 学习笔记 —— 高级指针话题
  18. Android实现弹出窗口(PopUpWindow)
  19. 微笑测试软件,探灵之微笑游戏测试
  20. 华为荣耀9短接点 | 华为荣耀9拆机短接TP测试点 | 华为荣耀9怎么短接出HUAWEI USB COM 1.0 (COM3)

热门文章

  1. 【学习笔记】【计算机网络【总】】物理层;链路层;网络层;传输层;应用层;详解
  2. 高胜寒聊架构-LVS集群的介绍
  3. 一个让她泪流满面的礼物
  4. 外卖系统注意功能源码
  5. 初学者对PHP的总结,PHP初学者总结
  6. 步进及伺服调试中常见问题
  7. 【轴承故障分解】基于matlab ITD轴承故障信号分解【含Matlab源码 1871期】
  8. python实现图片加滤镜_Python 实现简单滤镜
  9. 各种投资产品的整理分析(持续更新)
  10. cmmi实践访谈测试ppt_计划并实施CMMI_实践篇精选.ppt