我是靠谱客的博主 飘逸冰棍,最近开发中收集的这篇文章主要介绍matlab fvtool 滤波器频响,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

方法简介

用matlab设计滤波器后,可以用fvtool来看滤波器的频响,比如根据滤波器的系数:

fircoe = [0.018641, 0.018275,-0.020377,-0.071243,-0.049673,...
    0.094562, 0.28841, 0.37949, 0.28841, 0.094562,-0.049673,...
    -0.071243,-0.020377, 0.018275, 0.018641];
fvtool(fircoe);

在这里插入图片描述

实验验证

用Fdatool工具生成低通滤波器

在这里插入图片描述
1、点击“文件-导出”,导出滤波器系数
在这里插入图片描述
滤波器系数为:

Num = [0.189743041992188	0.00287628173828125	-0.0145111083984375	-0.0372161865234375	-0.0569534301757813	-0.0644531250000000	-0.0534057617187500	-0.0215911865234375	0.0274047851562500	0.0844116210937500	0.137962341308594	0.176025390625000	0.189590454101563	0.176025390625000	0.137962341308594	0.0844116210937500	0.0274047851562500	-0.0215911865234375	-0.0534057617187500	-0.0644531250000000	-0.0569534301757813	-0.0372161865234375	-0.0145111083984375	0.00287628173828125	0.189743041992188]

根据滤波器系数

fvtool(Num);

在这里插入图片描述

2、保存为16进制数,用于verilog fir的设计
在这里插入图片描述
导出的16进制数为:
在这里插入图片描述
根据16进制数画滤波器

A = [hex2dec('6126'),hex2dec('0179'),hex2dec('F892'),hex2dec('ECF2'),hex2dec('E2D7'),hex2dec('DF00'),hex2dec('E4A8'),hex2dec('F4F2'),hex2dec('0E08'),hex2dec('2B38'),...
     hex2dec('46A3'),hex2dec('5A20'),hex2dec('6112')]
B = fliplr(A(1:12))

data = [A,B]
for i=1:length(data)
    if(data(i) > 2^16/2-1)%8位宽的数据有符号数据取值范围[-128,127],(2^8/2-1=127),根据实际位宽修改
        data(i) = data(i) - 2^16;
    else
        data(i) = data(i);
    end
end

fircoe = data./65536
fvtool(fircoe);

在这里插入图片描述

最后

以上就是飘逸冰棍为你收集整理的matlab fvtool 滤波器频响的全部内容,希望文章能够帮你解决matlab fvtool 滤波器频响所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部