基于单片机的信号发生器的设计,输出方波,正弦波,三角波,锯齿波,频率可调。原理是如何哒?怎么取点

图是网上看见的正弦波的取点公式?对吗?那三角波和锯齿波是怎么样的呢?论文里要写吗?大神快来帮帮我哦,谢啦... 图是网上看见的正弦波的取点公式?对吗?那三角波和锯齿波是怎么样的呢?论文里要写吗?大神快来帮帮我哦,谢啦 展开
 我来答
狼涂腾E
2014-05-08 · TA获得超过232个赞
知道小有建树答主
回答量:224
采纳率:100%
帮助的人:109万
展开全部
51单片机硬件有PCA模块的,或者是PWM发生器的型号,也有没有的,你采用的芯片有没有这些硬件?
正弦波:
如果有,以PCA模块为例,可以作为DA使用,使用前根据datasheet配置好PCA。在51头文件中有math.h,里面有sin(X)函数,可以在程序中直接使用,使用前在主函数重要包含math.H这个文件。然后每个点采样输出即可,频率可调可以通过不同方法实现,如果是要做信号发生器,推荐使用一个电位器,通过AD采集电压,将采集值作为你输出函数的系数即可,亦可以通过串口发送指令等方式实现,前提要在使用前将AD或者串口配置好。
如果没有硬件模块,也可以用普通IO口模拟,思路如下,经过y=sinx函数求得的结果,经过算法转化成二进制(主要是将小数转化成二进制的算法),推荐转化成8的整数倍位,比如8位二进制或者16位二进制。转化结束后将结果给IO口输出即可,频率也可采取上述方法设定。
三角波:
如果有DA,将DA的输入值按一定时间自增,到达峰值后按一定时间自减。前文中的“一定时间”设定的足够小,可以近似认为是三角波。三角波输出频率就是周期,在具体到操作层面时,可以将输出函数前加上一个时间系数,还是通过调节正弦波的频率的方式调节。
木有DA···还是和正弦波类似,通过算法将输出值转化成二进制,然后送给IO口
方波:
这个最简单,将IO口定时切换高低电平即可,你定的时间就将成为你输出的频率。
如果有PCA模块,可配置成定时翻转模式,比较方便~
锯齿波是不是和方波类似啊?
8Q迦389492427
2014-05-08
知道答主
回答量:32
采纳率:0%
帮助的人:10.2万
展开全部
单片机信号的
频率的原理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式