28335的FIR滤波

[复制链接]
1786|13
 楼主| caijianfa55 发表于 2014-10-22 20:15 | 显示全部楼层 |阅读模式
FIR滤波的起始从零开始上升那段有没有办法避免掉?
[img]file:///C:/Documents%20and%20Settings/Administrator/Application%20Data/Tencent/Users/465223499/QQ/WinTemp/RichOle/DM8S@Y@GBA(~33LW124$[IE.png[/img]
程序如下:void fir_filter(float b[],float c[])

{
    int i,j=0;
    float sum;
    float h[21]={
              -0.09055792262407, 0.009744804975761,  0.01838867509003,  0.03195961694651,
               0.04917012260358,  0.06836127325356,  0.08774901331544,   0.1053433191277,
                0.1194310387162,    0.128484986607,   0.1316381457976,    0.128484986607,
                0.1194310387162,   0.1053433191277,  0.08774901331544,  0.06836127325356,
               0.04917012260358,  0.03195961694651,  0.01838867509003, 0.009744804975761,
              -0.09055792262407
               };
    for(i=0;i<300;i++)
    {
       sum=0.0;
       for(j=0;j<21;j++)
       {
           if(i >= j)
           sum+=h[j]*b[i-j];
           else
           ;
       }
       c=sum;
    }

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
zhangmangui 发表于 2014-10-22 21:34 | 显示全部楼层
matlab重新设计一下参数吧     
lijiabaobei 发表于 2014-10-23 18:43 | 显示全部楼层
是参数的问题吗
拿起书本 发表于 2014-10-27 14:03 | 显示全部楼层
采样刚开始 的时候,你的数组没写入值的时候,滤波出来当然是0。
 楼主| caijianfa55 发表于 2014-10-28 13:04 | 显示全部楼层
这个是FIR的固有缺陷,N阶的FIR前N/2个数据是无效数据,只能通过端点延拓解决,我只是不知道为什么我的无效数据有N个?
u880 发表于 2014-10-28 21:48 | 显示全部楼层
是不是参数选择的不对
huigoushang 发表于 2014-10-28 21:58 | 显示全部楼层
泪奔了 没有看懂啊
G21372 发表于 2014-10-28 22:15 | 显示全部楼层
木有这样使用过
yangguangaisha 发表于 2014-10-28 23:10 | 显示全部楼层
不太明白原理哎
gexingyouxian 发表于 2014-10-28 23:24 | 显示全部楼层
留着备用 呵呵
acer4736 发表于 2014-10-29 08:23 | 显示全部楼层
效果看上去不错呢
jinpaidianzi 发表于 2014-10-29 08:27 | 显示全部楼层
这个都是从0开始的呀 怎么可能避免掉呢
jinpaidianzi 发表于 2014-10-29 08:27 | 显示全部楼层
这个都是从0开始的吧
huangfeng33 发表于 2014-10-29 11:50 | 显示全部楼层
你这波形怎么看到的   在matlab中还是?

有些软件中都是从0开始的

您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

152

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部