• 大小: 52KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-06-07
  • 语言: 其他
  • 标签: c  lms  tms3205402  

资源简介

这个是用在tms3205402下编的用lms算法实现自适应滤波的源文件

资源截图

代码片段和文件信息

/*lms.c*/
#include 
#include 
#include 
#include “agc_face.h“
#include “agc_func.h“

#define N 1024    /*采样点数*/
#define g 100     /*仿真次数*/
#define k 128     /*抽头阶数*/
#define u 0.001   /*步长参数*/

float   d[N]xn[N]err[N]w[k]y[N];
int    i=0j=0noiseoutsingle;

int Read_BSP1();
void Write_BSP1();
void Led3_Light();//D3灯闪烁
void clear();
void lms();

void main()
{
    int n=0;
  
    init_board();    /*VC5402和AD50初始化*/ 
    clear();
  
    while(n    {
      single=Read_BSP1();      /*输入单音频信号*/
      d[0]=single;
      noise=rand()/20;
      xn[n] = d[n] + (noise>>2);  /*加噪后的信号*/
      lms(xn);
      
      Write_BSP1();
  Led3_Light();
  n++;
      
    } 
}

void clear()
{
   int ij;
   for(i=0;i     { 
       d[i]=0;
       xn[i]=0;
       y[i]=0;
       err[i]=0.0;
     }
   for(j=0;j     {
       w[j]=0.0;
     }
}

void lms()
{
  int i=0j=0;
  for(i=k;i     {
        for(j=0;j          {
            y[i]+=xn[i-j]*w[j]; 
           }
        err[i]=d[i]-y[i];
        for(j=0;j          {
            w[j]+=u*err[i]*xn[i-j];
           }
      } 
   Write_BSP1();
   
}

int Read_BSP1(void)
{
 int dDataIn;
 *(volatile u16 *)SPSA_ADDR(1)=SPCR1_SUBADDR;
 while(!((*(volatile u16*)SPSD_ADDR(1))&0x0002)){};
 dDataIn=*(volatile u16*)DRR1_ADDR(1);
 return dDataIn;
}

void Write_BSP1(int dDataOut)
{
 *(volatile u16*)SPSA_ADDR(1)=SPCR2_SUBADDR;
 while(!((*(volatile u16*)SPSD_ADDR(1))&0x0002)){};
 *(volatile u16*)DXR1_ADDR(1)=dDataOut;
}

void Led3_Light(void)
{
static int i=0;
if(i>1024)
{
*(volatile u16*)reg_ST1^=0x2000;
i=0;
}
i++;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2202  2006-03-09 19:07  Lms\agc_face.h

     文件       3517  2009-05-07 16:59  Lms\agc_func.h

     文件        279  2009-05-10 21:46  Lms\cc_build_Debug.log

     文件       5600  2009-05-10 21:46  Lms\Debug\Lms.map

     文件       5995  2009-05-10 21:46  Lms\Debug\Lms.obj

     文件       8733  2009-05-10 21:46  Lms\Debug\Lms.out

     文件        263  2009-05-10 21:46  Lms\Debug.lkf

     文件        263  2009-05-10 21:46  Lms\Debug.lkv

     文件          0  2009-05-09 10:00  Lms\IDRAM

     文件        395  2006-12-13 18:52  Lms\linker.cmd

     文件       1788  2009-05-10 21:30  Lms\Lms.c

     文件       1569  2009-05-10 21:50  Lms\Lms.paf

     文件        817  2009-05-10 21:45  Lms\Lms.pjt

     文件       2814  2003-01-08 13:15  Lms\math.h

     文件     184552  2003-01-08 13:15  Lms\rts.lib

     文件          0  2009-05-09 10:00  Lms\SRAM

     文件          0  2009-05-09 10:00  Lms\STACK

     文件          0  2009-05-09 10:00  Lms\XDRAM

     目录          0  2009-08-28 22:29  Lms\Debug

     目录          0  2009-08-28 22:29  Lms

----------- ---------  ---------- -----  ----

               218787                    20


评论

共有 条评论