hbtswy 发表于 2009-11-19 11:07:34

问大家一个关于DDS的问题

如题 我们这需要一个DDS产生100-20k的正弦波 精度只要到1hz就够了
有没有搞过DDS的兄弟给推荐个便宜点的 能满足要求就行 小弟在这谢谢了

bg6agf 发表于 2009-11-19 12:43:34

AVR单片机加R2R网络
请GOOGLE
AVR DDS

eezm 发表于 2009-11-19 14:32:00

见:

http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3412626&bbs_page_no=1&bbs_id=3056

heize 发表于 2009-11-19 14:39:00

前段时间用过ad5932,还可以自动扫频
你不妨看下
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3567461&bbs_page_no=1&search_mode=3&search_text=heize&bbs_id=9999

rock5248 发表于 2009-11-25 18:36:27

要DDS信号发生器是吧?

ibmx311 发表于 2010-2-5 02:48:13

直接用D/A+CPLD就行了.网上有的是范例

AustinShun 发表于 2010-2-5 03:16:24

回复【5楼】ibmx311
-----------------------------------------------------------------------

单纯DA+CPLD的方案是不可行的

为什么不可行?你可以试下用这种方案生成一个1.2345MHz的正弦波,看看频率精度有多少

yuhang 发表于 2010-2-5 08:03:40

LS 说的这就不对了

我用CPLD做的 32位DDS核才用了70个LE

如果主频50M

那么频率分辨率 0.012Hz

vipcff 发表于 2010-2-5 08:22:08

请六楼给个不可行的原因啊 谢谢 我感觉没有问题啊

1181zjf 发表于 2010-2-5 09:21:25

还以为是快递呢!呵呵。

AustinShun 发表于 2010-2-14 15:26:25

回复【7楼】yuhang
-----------------------------------------------------------------------

根据我自己的理解,如果时钟源是50M,要生成1.2345M的正弦波,那么要求在50/1.2345个时钟周期中还原一个输出信号波形,而50/1.2345得到的是一个小数(40.502),如果取41个时钟周期,则实际还原频率为1.2195M;如果取40,则还原信号频率为1.25M,因此频率精度低频尚可,到高频段频率精度会越来越低

我自己用EPM270和DAC904做过一个DDS,就是基于上面的思想完成,实验结果也和上面的推论吻合。但是DDS芯片就可以做到比这个高得多的频率精度,所以我一直觉得DDS芯片是很神秘的东西

请教于航兄的DDS算法是如何实现的?是否我对DDS的思想理解有误?

yuhang 发表于 2010-2-14 19:18:45

我一直想出一个DDS原理的教程

其实讲DDS还得从 AD采样讲起,采样定理楼上的清楚吧

只要采样频率大于被测信号频率的二倍理论上就可以还原波形

所以 50M主频的DDS最多可以输出25M的正弦波


DDS的相位累加器是主要的部分
其思想就是 实现等间距的累加,累加的步进值就是 频率控制字



例如50M主频32位分辨率 想输出1.2345M那频率控制字就是106042742实际输出的频率是1234499.993734Hz可以说相当精确了

zwham 发表于 2010-6-12 10:22:14

我做过fpga 加加权电阻,频率很准的。
页: [1]
查看完整版本: 问大家一个关于DDS的问题