echo.c

来自「ICETEK-VC5416-EDULab瑞泰创新科技5416开发板的实验源程序」· C语言 代码 · 共 80 行

C
80
字号
/////////////////////////////////////////////////
//  Example For ICETEK-VC5416-EDU              //
//          CTR Version : V4                   //
//  Filename: Echo.c                           //
//  Project : Echo.pjt                         //
//  Version : 2.00                             //
//  Write by: Daniel Hawk                      //
//  Company : Realtimedsp Co.Ltd.              //
//                                             //
//  All Rights opened & no Onus  2005.06       //
/////////////////////////////////////////////////
#include "myapp.h"
int ioport port8000;
#define DataBuffSize 8192  // 设置缓冲区大小
#define DELAYTIME 6134
int iLeftIn [DataBuffSize]; // 设置左声道输入缓冲区
int iTempBuff[DataBuffSize];
int nTime,nTime1,nCount;
unsigned int bEcho=0;

void main( void )
{
   long   int i,k;
   initCLK(CPU_SPEED_160M);
   initMcBSP1();
   initAIC23();
   initMcBSP0();
   nCount=DELAYTIME;
   nTime1=DELAYTIME/2;
   nTime=0;
  
   // 缓冲区初始化
   for(i=0;i<DataBuffSize;i++)
   {
     iLeftIn[i]=0;
	 iTempBuff[i]=0;
   }
   initInterrupt();
   port8000=0;
   port8000=0x8888;
   port8000=0;
   bEcho=0;
   for(;;)
   {
   
   }

}
interrupt void rxData( void )
{
   int i,j;
   i=DRR10;
   j=DRR20;
   
   
   iLeftIn[nCount]=i;
   // 回声效果,2级回声
         
         
   DXR10=i;
   if(bEcho)
   {
  	iTempBuff[nCount]=iLeftIn[nCount]/2+
  		 iLeftIn[nTime1]/4 + 
         iLeftIn[nTime]/4;
   
     DXR20=iTempBuff[nCount];
   }
   else
     DXR20=j;
   nTime++;
   nTime1++;
   nCount++;
   nCount%=DataBuffSize ;
   nTime%=DataBuffSize;
   nTime1%=DataBuffSize;

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?