一、首先,我们用C语言产生一段正弦波,用一定的采样频率对它进行采样,并把采样值存到一个文本文件中。
void main(void)
{
int i;
int f =1000; //1000hz的正弦波
float fs = 8000.00; //采样频率为80000hz
float s,t,w;
const float PI = 3.141;
FILE *fpt;
fpt = fopen("Sine.txt","w"); //创建txt文件存储正弦数列值
for(i=0; i< 80000;i++) //采样十个周期
{
t=i/(f*fs);
w=f*2*PI;
s = sin(w*t); //获取采样值
//printf(" %f;\n", s);
fprintf(fpt,"%f\n",s); //把采样值输出到文件中
}
fclose(fpt);
Pcm_bianma("Sine.txt");
}
采样结果:
二、把文件中的数据读出来,作十三折线换算。
输入为x,输出为y。
for(i=0;i<80000;i++)
{
b=j[i]; //记录符号
if (b>=0)
{
m=1;
}
else
{