矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 6789|回复: 18

使用51单片机制作正弦波信号发生器!

[复制链接]
     
发表于 2021-4-18 23:01:46 来自手机 | 显示全部楼层 |阅读模式
使用STC12C5A60S2制作了一个正弦波信号发生器,实验了一下基本上是可以产生任意波形的,使用12MHZ晶振,R2R电阻串实现DAC转换!不好的地方是频率太低,波形也不是那么完美,最高能产生10KHZ的正弦波!
IMG_20210417_183304.jpg
IMG_20210417_113307.jpg
IMG_20210416_203236.jpg

评分

2

查看全部评分

     
发表于 2021-4-19 00:35:09 | 显示全部楼层
赞,爱因斯坦做的第1个小椅子也是丑陋的。
回复 支持 1 反对 0

使用道具 举报

     
发表于 2021-4-19 06:42:25 | 显示全部楼层
本帖最后由 longshort 于 2021-4-19 06:43 编辑

非常好!
还可以试试查表的方式去驱动STC内置的PWM部件,那就ADC和R2R都不用了。
回复 支持 反对

使用道具 举报

     
发表于 2021-4-19 06:49:33 | 显示全部楼层
别说正弦波了,方波频率都不高
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 07:30:07 来自手机 | 显示全部楼层
xiaomu 发表于 2021-4-19 00:35
赞,爱因斯坦做的第1个小椅子也是丑陋的。

要达到实用也不容易
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 07:30:46 来自手机 | 显示全部楼层
longshort 发表于 2021-4-19 06:42
非常好!
还可以试试查表的方式去驱动STC内置的PWM部件,那就ADC和R2R都不用了。

PWM也可以额,没用过!
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 07:32:42 来自手机 | 显示全部楼层
iffi123 发表于 2021-4-19 06:49
别说正弦波了,方波频率都不高

方波的话应该能产生100KHZ的信号
回复 支持 反对

使用道具 举报

     
发表于 2021-4-19 10:42:07 | 显示全部楼层
你这个方式,cpu得不停的刷新。这个东西单独做出模块,可行。
但是,如果再想,同步输出方波脉冲,输出的就不均匀了,是吧

许老师的LCR就是用的PWM输出,强力滤波后,变成了正弦波
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 10:50:34 来自手机 | 显示全部楼层
peiguoqing 发表于 2021-4-19 10:42
你这个方式,cpu得不停的刷新。这个东西单独做出模块,可行。
但是,如果再想,同步输出方波脉冲,输出的 ...

不是很明白,是同时输出方波吗?我搞的可以转换正弦波、方波、三角波、锯齿波,但是不是同时输出,同时的话速度不够的!
回复 支持 反对

使用道具 举报

     
发表于 2021-4-19 10:58:14 | 显示全部楼层
分立元件 发表于 2021-4-19 10:50
不是很明白,是同时输出方波吗?我搞的可以转换正弦波、方波、三角波、锯齿波,但是不是同时输出,同时的 ...

您这个原理,是不是用P口输出,查表法的数据值?
我的意思,是在另外一个P口,同步输出这个正弦信号的0,90,180,270方波信号?
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 11:03:35 来自手机 | 显示全部楼层
peiguoqing 发表于 2021-4-19 10:58
您这个原理,是不是用P口输出,查表法的数据值?
我的意思,是在另外一个P口,同步输出这个正弦信号的0, ...

对的查表法P口输出,要另外一个P口输出的话速度降低了
回复 支持 反对

使用道具 举报

     
发表于 2021-4-19 12:02:36 | 显示全部楼层
要用定时器中断更新输出,波形才会好点
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 13:28:34 来自手机 | 显示全部楼层
iffi123 发表于 2021-4-19 12:02
要用定时器中断更新输出,波形才会好点

一样的,和ADC和数组大小有关
回复 支持 反对

使用道具 举报

     
发表于 2021-4-19 14:02:02 | 显示全部楼层
分立元件 发表于 2021-4-19 13:28
一样的,和ADC和数组大小有关

怎么会一样呢,定时中断能保持输出是固定间隔, 不是软件延时可比的
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2021-4-19 19:50:21 来自手机 | 显示全部楼层
iffi123 发表于 2021-4-19 14:02
怎么会一样呢,定时中断能保持输出是固定间隔, 不是软件延时可比的

这个波形就是定时器控制的!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-30 17:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表