www.pudn.com > aaa.rar > caculate.h


#include "math.h" 
void sinwn(int num,double f,double* sam) 
{ 
	double pi; 
    pi=4.0*atan(1.0); 
	for(int i=0;i=360) 
			 degree -= 360.0; 
 
		if(degree >= 0 && degree < 180) 
			data[i] = (1.0 * amp) + offset; 
		else if(degree >= 180 && degree < 360) 
			data[i] = (-1.0 * amp) + offset; 
	} 
} 
 
void TriangleWave(int firstPos, 
				  int n, 
				  double amp, 
				  double freqSignal, 
				  double freqSample, 
				  double phase, 
				  double offset, 
				  double *data) 
{ 
	double tmp; 
	tmp = freqSample / freqSignal;//可能就是时基的概念? 
	double degree; 
 
	int times = firstPos + n; 
	for (int i=0; i=360) 
			 degree -= 360.0; 
		 
		if(degree >= 0 && degree < 90) 
			data[i] = ((degree/90.0) * amp) + offset;//x/90 
		else if(degree >= 90 && degree < 270) 
			data[i] = ((2-degree/90.0) * amp) + offset;//2-x/90 
		else if(degree >=270 && degree <360) 
			data[i] = ((-4+degree/90)*amp)+offset;//-4+x/90 
	} 
} 
void SawtoothWave(int firstPos, 
				  int n, 
				  double amp, 
				  double freqSignal, 
				  double freqSample, 
				  double phase, 
				  double offset, 
				  double data[]) 
{ 
	double tmp; 
	tmp = freqSample / freqSignal;//可能就是时基的概念? 
	double degree; 
 
	int times = firstPos + n; 
	for (int i=0; i=360) 
			 degree -= 360.0; 
		 
		data[i] = ((1.0 - degree/180.0) * amp) + offset; 
	} 
}