打印

有没有做过数字滤波的前辈啊

[复制链接]
1584|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wgsxsm|  楼主 | 2012-6-18 19:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手头有个项目,前任工程师写的一个数字滤波程序如下,本人菜鸟,不是很懂,现在项目中采样频率提高了50倍,以前10Hz,现在500Hz,导致采集的信号工频没有被滤掉,请高手给与指点,原来的程序如下:
void c1filterculi(void)
{
    if(C1FILTERTIME!=0)
        return;
    C1FILTERTIME=50;
    if(C1FILTERSTART==1)
    {
        C1DATA0[0]=AD4096AVERAGE[0];
        C1DATA0[1]=AD4096AVERAGE[0];
        C1FILTERSTART=0;
        return;
    }
    C1DATA0[1]=C1DATA0[0];
    C1DATA0[0]=AD4096AVERAGE[0];
    C1DATA1[1]=C1DATA1[0];
    J=C1DATA0[0];
    K=C1DATA0[1];
    J=J-K;
    J=J<<4;    //12-BIT AD
    J=J+C1DATA1[1];
    GG220TIME();
    K=K+0X8000;
    if((K&0X80000000L)!=0)
        K=0;
    K=K/221;
    if((K&0XFFFF0000L)!=0)
        K=0XFFFF;
    C1DATA1[0]=K;
}


void GG220TIME(void)
{
    K=0X00;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
}

相关帖子

沙发
hefengwei| | 2012-6-18 23:09 | 只看该作者
好复杂啊 可惜我也看不懂  不知道用的神马算法

使用特权

评论回复
板凳
hefengwei| | 2012-6-18 23:10 | 只看该作者
void GG220TIME(void)
{
    K=0X00;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
}
一般谁写函数成这样我都要骂的!!

使用特权

评论回复
地板
hefengwei| | 2012-6-18 23:10 | 只看该作者
谁知道在做什么啊

使用特权

评论回复
5
wgsxsm|  楼主 | 2012-6-19 08:08 | 只看该作者
貌似是 y(0)=220*x(0)

使用特权

评论回复
6
coody| | 2012-6-19 09:53 | 只看该作者
看不懂,尽管我经常用低通、高通、带通、带阻等数字滤波。

使用特权

评论回复
7
huailove| | 2012-6-19 11:30 | 只看该作者
专写别人看不懂的程序

使用特权

评论回复
8
suse-lj| | 2012-6-19 12:34 | 只看该作者
void GG220TIME(void)
{
    K=0X00;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<1;
    K=K+J;
    J=J<<2;
    K=K+J;
    J=J<<1;
    K=K+J;
}
如果这用到项目上,叫项目经理看了,情何以堪

使用特权

评论回复
9
wukunshan| | 2012-6-19 13:59 | 只看该作者
没有一句注释,代码可读性很差。不值得去研究这种代码。

使用特权

评论回复
10
sixgett| | 2012-6-19 16:10 | 只看该作者
你还是别看前任的程序了,只供参考,网上很多程序的,你可以看懂注释,自己修改!

使用特权

评论回复
11
gx_huang| | 2012-6-19 19:10 | 只看该作者
采样500Hz,工频50Hz,滤波应该好处理的。
每10×n个数据的平均就可以了,也就是工频的倍数数据就可以了。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
wgsxsm + 1
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

652

帖子

4

粉丝