⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 coswave.c

📁 DSP5402产生余弦信号以C语言源代码,已仿真通过
💻 C
字号:
//cos(nx)=2*cosx*cos((n-1)x)-cos((n-2)x)
//sin(nx)=2*cosx*sin((n-1)x)-sin((n-2)x)
ioport unsigned port0bfff;
#define IOSR port0bfff;
#define _COSX 0.9979

#pragma DATA_SECTION(_cosx,"data_buf1")
float _cosx[200];
#pragma DATA_SECTION(dacdata,"data_buf2")
int dacdata[180];

void delay(void);
void main(void)
{
unsigned int i=0;
_cosx[0]=1.0000;
dacdata[0]=4095;
_cosx[1]=_COSX;
dacdata[1]=_COSX*2047+2048;
i=1;
while(1)
	{
	if(i++>179)
	break;
	_cosx[i]=2*_COSX*_cosx[i-1]-_cosx[i-2];
	dacdata[i]=_cosx[i]*2047+2048;
	}
i=0;
while(1)
	{
	if(i>179)
	i=0;
	IOSR=dacdata[i++];
	delay();
	}
}
/*延迟等待函数*/
void delay(void)
{
long int j,k;
for(j=0;j<200;j++)
	{
	for(k=0;k<2000;k++);
	
	}
//asm("_nop");
}


⌨️ 快捷键说明

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