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);

在这里插入图片描述

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值