怎样计算正弦波?把正弦波的采样坐标点放到一个数组里,然后如何实现正弦波的输出?
下面有一个公式望各位大侠给菜鸟指导一下,谢谢!
y=sin(3.1415*2*i/256)*2048+2048(注:256为数组的大小)
请问2048是什么意思?为什么要乘上它?麻烦给菜鸟解释一下这个公式。
------解决方案--------------------
2048,该是和它的DA的分辨率有关...因为sin计算的结果有负值,所以要加上一个偏移(2048),
它的DA有12-BIT,接受0-4095的输入数值...
------解决方案--------------------
y=sin(3.1415*2*i/256)*2048+2048
一般按这个公式把i从0到255对应的值计算出来存放到一个表里面,然后在Timer中断里面把这个表里面的数值依次送给DA,DA的输出就是sin波形了.
------解决方案--------------------
我直接做了一个软件,专门算正弦波,方波的查找表的。任意位数的da,任意的采样数都可以直接生成数组
------解决方案--------------------
这软件给我用下行不,谢谢![email protected]
------解决方案--------------------