原创 使用STC89C51做的模拟DDS,频率可调的音频信号发生器

2009-3-14 09:46 4448 4 8 分类: 测试测量

       最近一直在研究使用单片机做一个可调的音频信号发生器,在网上搜了一下,发现一个AVR  模拟DDS的例子,一直没有弄明白,还好现在根据程序原理。使用汇编写了一个MCS51的程序。


       单片机使用得是宏景公司的STC51系列,程序使用汇编编写,参照AVR miniDDS原理图,加了串口通信,使用上微机控制。可以输出正弦波、方波、三角波、锯齿波等。


       经试验在6T时钟模式,晶振为22.1184M下,最高波形输出可以达到10KHz(正弦波,不失真)精确到1Hz的控制,最高达到20K,最低可以达到是0.1Hz,方波可以到30KHz,完全可以作为一个实用的音频信号发生器实用。


       最后使用宏景的1T单片机STC5410做了试验。发现输出频率可以到30K(不失真。正弦波)方波可以输出到60K以上。但在使用1T STC5410时发现,输出不能像STC8051那样输出漂亮的波形,而是夹杂很多杂波,原本在6T、51 上的程序移植在1T的51上,波形输出不好。。不知为什么。


       现在我把它一直在了最新的STC12C56带ADC的51系列上,做成带有音频示波和按键控制的液晶现实小系统。呵呵、还是很好用的仪器。


点击看大图


这是仿真文件


https://static.assets-stash.eet-china.com/album/old-resources/2009/3/14/4e59a890-ed62-4c1e-b872-c9b00c89d46d.rar   两个按钮是频率加减10Hz,DAC可以改成电阻网路型DAC(请参考AVR_miniDDS的DAC方式)。


 


 


 

文章评论4条评论)

登录后参与讨论

用户27753 2011-2-22 22:08

朋友,怎么样可以联系到你啊。我也在做这仿真。加一下我的QQ吧。660628

用户285138 2010-6-29 12:42

效果还是可以的。

用户152409 2009-3-14 09:43

呵呵,如您所说, 我在后面加了MAX291用STC51的方波输出给MAX291提供时钟,做跟踪滤波,效果还是可以的。

tengjingshu_112148725 2009-3-12 23:35

其实速度还可以再上去,理论上采样多于两个点就可以重建波形,只要后级加滤波就行。
相关推荐阅读
用户152409 2011-06-24 13:14
新做的智能型振动温度变送器上位机软件
硬件正在测试中。 振动速度使用加速度传感器积分获得。可以测量水平和垂直振动的速度。最大量程50mm/s-rms。温度测量范围-50-200℃。2通道振动4-20mA变送输出,1通道温度变送输出。 呵...
用户152409 2011-04-09 17:52
新设计的振动校验仪软件
新设计的振动校验仪的上位机软件 ...
用户152409 2009-06-08 20:28
振动速度传感器的标定软件设计
 振动速度传感器的标定软件设计(暂叫这个名字吧)呵呵这是上位机软件正在完善中。。不过已经可以标定“振动速度传感器”以上图片是标定的"无锡厚德的振动速度传感器"可见其频率响应特点。图中红色游标线所指是它...
用户152409 2009-04-06 10:18
振动激振器的闭环控制的研究
最近用到了电磁振动激振器做实验,但发现这个振动台是使用开环控制的。即使用信号发生器和电位器控制功放输出信号的大小来控制电磁振动台的振动大小。经过Google搜索发现市面上有现成的振动控制仪,不过体积不...
用户152409 2008-09-01 21:00
avrminiDDS的研究
无意中从网上看到AVRminiDDS。是一个外国人做的用AVR模拟DDS原理做的1-100K的信号发生器。以下是他的资料The software is written in assembler, as...
我要评论
4
4
关闭 站长推荐上一条 /2 下一条