‘壹’ 51单片机C语言怎样编写用DA可以出现正弦波
将一个周期的正弦波的幅值量化为0-255,将这256个值 存在程序空间里面,单片机定时依次循环取出这些值送到DA转换器,DA输出后进行低通滤波即能得到正弦波了。如果要节省空间可以利用正弦波形的对称性只需存入1/4周期的数据再经一个简单算法也可以得到正弦波。
‘贰’ C语言怎么编写正弦波
源代码如下:
#include#include#define EX 0.000001
#define PI 3.14159265
int main()
{
double x=0.0, temp=1.0, sin=0.0;
int i;
printf("Please input a degree:");
scanf("%lf",&x);
x=x*PI/180;
temp=x;i=0 ;
while ( fabs(temp) >EX ) ...{
sin += temp;
i += 2;
temp = (-1) * temp*x*x/( (i+1)*(i) );
}
printf("sin(%lf) = %lf ",x,sin);
printf("The number is %d ",i);
return 0;
}
(2)c51语言正弦波的使用方法扩展阅读
C语言编写一个程序输出一个正方形的源代码如下:
#include
intmain()
{
inti,j,n;
scanf("%d",&n);
for(i=0;i
printf("*");
else
printf("");
}
printf(" ");
}
return0;
}
‘叁’ 请问用C语言怎么编写程序产生一个正弦波
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#defineFQ1000
#defineAM1000
#definePI3.14
intmain()
{
FILE*stream;
inti=0,j=0;
doublevalue=0,bb=0;
shortgg[1000];
stream=fopen("sine_wave.raw","wb");
value=(2*PI/8);
for(i=0;i<1000;i++)
{
bb=AM*sin(value*i);
gg[i]=(short)bb;
//fprintf(stream,"%d/n",gg);
}
fwrite(gg,2,1000,stream);
fclose(stream);
return;
}