中国(深圳)国际机器视觉展览会暨机器视觉技术及工业应用研讨会→ 立即报名 ←
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 如何用单片机产生100K的正弦波?

共8条 1/1 1 跳转至

如何用单片机产生100K的正弦波?

菜鸟
2019-09-04 21:53:56    评分

除了用dac外,好像还有PWM的方法,但是PWM的方法我看不懂原理啊,有没有关于pwm转正弦的这方面的原理的资料,哪位给个思路或方案吧!




关键词: 单片机     正弦波     PWM    

助工
2019-09-04 22:15:44    评分
2楼

如果是单纯的100K正弦波,你只要输出100K方波,低通滤波就可以了。
如果要直接输出可变频率最高到100K的正弦波,普通单片机不够快的。
以前用C8051也做不了,大概最高到20K,失真已经比较大了,要加低通滤波了。


菜鸟
2019-09-04 22:25:14    评分
3楼

PWM基本是不要想了,做个10K还马马虎虎。用单片机直接输出矩形波再加低通是可以输出100K的,不过频率要连续可调就难了。
我的想法是:用高速运放做一个锯齿波发生器,单片机DA输出一个直流电平,切割锯齿波,控制锯齿波的翻转频率,这样似乎可以连续可调,分辨率就取决于DA的精度以及运放了,后面再加一个整形电路,整形后一路接低通滤波,一路进单片机测频率,反馈调节DA输出的电平高低,如此这番,搞定收工。
上述运放电路也可以用555来做。


菜鸟
2019-09-04 22:34:50    评分
4楼

方波经低通后输出的是三角波...


菜鸟
2019-09-04 22:43:13    评分
5楼
如果仅仅是产生正弦波,没别的啥功能,那么倒是可以的。
我自己用STC11F02E做过一个小的信号发生器,正弦波和方波同时输出,1HZ~200KHZ,跑有源32.768MHZ时钟,IO接R-2R电阻做8位DAC,模拟DDS,串口设置频率,步进1HZ或10HZ,精度优于1/10000(决定于有源晶振)。



菜鸟
2019-09-04 22:45:37    评分
6楼

TO楼主,

你不相信的话,建议你先看下DDS原理。
步进10HZ,那么就可以200.00K、199.99K、199.98K、199.97K、199.96K。。。这样输出。
步进1HZ,那么就可以200.000K、199.999K、199.998K、199.997K、199.996K。。。这样输出。
如果用专门的DDS芯片,即使输出10MHZ,一样可以用0.1HZ的步进来设置。



菜鸟
2019-09-04 22:52:54    评分
7楼
再好好学习下傅立叶函数吧,100K的方波也是由其各倍频的郑玄函数组成的,带通滤波后就可以得到你要的波形~



助工
2019-09-05 18:03:15    评分
8楼

学习了


共8条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]