📄 echo.c
字号:
/////////////////////////////////////////////////
// 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=6;
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -