[讨论] 单片机如何产生200K的正弦波波形信号?定时器不行,查表的话数据表没法算啊

竹无心   2014-8-30 11:02 楼主
单片机我直接中断产生方波才30多K根本就不够用,更别提查表产生正弦波三角波了,就一个波形数据表都没法算,几百万个频点,MATLAB都算不过来,哪位大神给个好方法,都头疼好几天了

回复评论 (8)

直接存结果啊
点赞  2014-8-30 12:43
固定200K容易,变频难
点赞  2014-8-30 12:46
引用: huo_hu 发表于 2014-8-30 12:46
固定200K容易,变频难

请问,单片机如何产生200K?看电子竞赛书,他说DDS存数据表产生,从表里间隔取点实现调频,但是数据表怎么算?没法搞啊,求大神赐教方法啊
点赞  2014-8-30 15:56
引用: huo_hu 发表于 2014-8-30 12:43
直接存结果啊

怎么存?查表法就是直接存结果啊,只不过是一些离散的频点,取出来以后就是模拟波形啊
点赞  2014-8-30 15:58
引用: 竹无心 发表于 2014-8-30 15:58 怎么存?查表法就是直接存结果啊,只不过是一些离散的频点,取出来以后就是模拟波形啊
你先说说你的要求,调不调幅变不变频,精度要求和范围. 不变频不调幅的方案就方波滤波好了,DDS是另外思路和单片机关系不大了. 本帖最后由 huo_hu 于 2014-8-30 16:27 编辑
点赞  2014-8-30 16:24
象楼上所说,要求具体一些地好。

用单片机产生,可以将正弦波表存于存储器中,为了取出方便,可以使用128、512、1024等这些使用与操作即可处理地址的方法。会更快一些,因为单片机判断转移指令需要的时间长。

如果没有特殊要求,象楼上所说的,产生方波后滤波也是很好的办法。
点赞  2014-8-30 17:01
MCU产生正弦波适宜采用方波滤波法,严格的正弦波应该采用频率合成芯片,MCU只是做控制用。特殊场合必须用软件产生的话,换用DSP。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2014-8-30 19:35
1. 如果固定频率 , 且使用的是cm3, 可以使用DAC功能 + DMA方式--> 可以很省心
2. 如果对波形质量要求不高, 可以使用方波(脉冲) + RC滤波方式
3. 如果有频率及波形质量都有要求,可以考虑使用DSP
点赞  2014-9-1 12:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复