打印
[DSP编程]

关于DSP2812实时采样后进行FIR滤波并输出

[复制链接]
1527|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xinsui|  楼主 | 2015-12-17 15:19 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
xinsui|  楼主 | 2015-12-17 15:24 | 只看该作者
这是输出后的图波形

DSC_09721.jpg (110.45 KB )

如图,这是输出后的波形

如图,这是输出后的波形

使用特权

评论回复
板凳
xinsui|  楼主 | 2015-12-17 15:24 | 只看该作者
求救大神:'(:'(:'(

使用特权

评论回复
地板
JY-DX-JY| | 2015-12-17 15:57 | 只看该作者
程序?输入波形?

使用特权

评论回复
5
xinsui|  楼主 | 2015-12-17 16:29 | 只看该作者
JY-DX-JY 发表于 2015-12-17 15:57
程序?输入波形?

采集的信号为50Hz的正弦波:采集400个点:下面是A/D中断中的函数

        if (m==400)
                {
                fir();//启动FIR滤波
                StartCpuTimer0();//开始D/A输出
                m=0;
                }


以下是FIR中的程序
void fir()
{
       int m,n;
    unsigned int *x;

   for(n=0;n<399;n++)
  {     x=&input[n];     //指针指向每次导入的数据
        yn=0.0;        //每做完一次乘累加后,把值赋给输出coefficient1后重新归0;
        for(m=0;m<N-1;m++)
            yn+=BB[m]*(*(x++));//做N次的乘累加
       coefficient1[n]=yn;//赋值
  }
         }




使用特权

评论回复
6
zhangmangui| | 2015-12-17 23:04 | 只看该作者
别做FIR前的波形输出去看看吧   

使用特权

评论回复
7
xinsui|  楼主 | 2015-12-18 10:46 | 只看该作者
zhangmangui 发表于 2015-12-17 23:04
别做FIR前的波形输出去看看吧

屏蔽FIR前波形是正确的,貌似是因为在采完400个点后再滤波需要的时间大于我的采样时间,还有待验证

使用特权

评论回复
8
Azelus| | 2015-12-30 10:31 | 只看该作者
边采样变输出才行

使用特权

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

本版积分规则

1

主题

7

帖子

0

粉丝