打印

28335的FIR滤波

[复制链接]
1407|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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。

使用特权

评论回复
5
caijianfa55|  楼主 | 2014-10-28 13:04 | 只看该作者
这个是FIR的固有缺陷,N阶的FIR前N/2个数据是无效数据,只能通过端点延拓解决,我只是不知道为什么我的无效数据有N个?

使用特权

评论回复
6
u880| | 2014-10-28 21:48 | 只看该作者
是不是参数选择的不对

使用特权

评论回复
7
huigoushang| | 2014-10-28 21:58 | 只看该作者
泪奔了 没有看懂啊

使用特权

评论回复
8
G21372| | 2014-10-28 22:15 | 只看该作者
木有这样使用过

使用特权

评论回复
9
yangguangaisha| | 2014-10-28 23:10 | 只看该作者
不太明白原理哎

使用特权

评论回复
10
gexingyouxian| | 2014-10-28 23:24 | 只看该作者
留着备用 呵呵

使用特权

评论回复
11
acer4736| | 2014-10-29 08:23 | 只看该作者
效果看上去不错呢

使用特权

评论回复
12
jinpaidianzi| | 2014-10-29 08:27 | 只看该作者
这个都是从0开始的呀 怎么可能避免掉呢

使用特权

评论回复
13
jinpaidianzi| | 2014-10-29 08:27 | 只看该作者
这个都是从0开始的吧

使用特权

评论回复
14
huangfeng33| | 2014-10-29 11:50 | 只看该作者
你这波形怎么看到的   在matlab中还是?

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

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

152

帖子

1

粉丝