OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4823|回复: 6

不同频率正弦波波形叠加问题

[复制链接]

15

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2019-1-10
在线时间
32 小时
发表于 2020-11-4 14:21:25 | 显示全部楼层 |阅读模式
5金钱
频率为14HZ的正弦波和频率38HZ的正弦波叠加,通过32的DAC输出,求大佬指点程序的思路。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

12

主题

3402

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8686
金钱
8686
注册时间
2020-5-11
在线时间
4168 小时
发表于 2020-11-4 15:19:22 | 显示全部楼层
假如正弦波表为256字节实际上可以更多一些,波形会更平滑)
u16 sintab[256]={......};//一个周期的正弦波
u16 p;//查表指针
u16 step;//查表步进
//定时调用
void timer(void)
{
DAC=sintab[p>>8];//用p的高8 位查表
p+=step;
}
假如定时调用频率为f,产生正弦波频率为f*step/65536;
假如定时调用频率为256Hz,当step=256时,产生的波形频率为1Hz.
要合成两个频率,就用两组与频率对应的p与step分别查表,得到数据相加并除2即可.
专治疑难杂症
回复

使用道具 举报

15

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2019-1-10
在线时间
32 小时
 楼主| 发表于 2020-11-4 15:30:43 | 显示全部楼层
LcwSwust 发表于 2020-11-4 15:19
假如正弦波表为256字节实际上可以更多一些,波形会更平滑)
u16 sintab[256]={......};//一个周期的正弦波 ...

谢谢!第一次写,有没有完整的程序例子。
回复

使用道具 举报

12

主题

3402

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8686
金钱
8686
注册时间
2020-5-11
在线时间
4168 小时
发表于 2020-11-4 15:50:31 | 显示全部楼层
sukie 发表于 2020-11-4 15:30
谢谢!第一次写,有没有完整的程序例子。

来来来,说一下你哪里不懂?
虽然我给的是伪代码,但我相信原理是讲清楚了的,先试着产生一个正弦波表格,再试着输出一个单频的信号,慢慢来,不要慌.
专治疑难杂症
回复

使用道具 举报

15

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2019-1-10
在线时间
32 小时
 楼主| 发表于 2020-11-5 10:22:49 | 显示全部楼层
LcwSwust 发表于 2020-11-4 15:50
来来来,说一下你哪里不懂?
虽然我给的是伪代码,但我相信原理是讲清楚了的,先试着产生一个正弦波表格 ...

单频正弦波可以搞定,我用的查表法,DAC+TIM+DMA产生的,就是不同频率的正弦波叠加不懂。
回复

使用道具 举报

12

主题

3402

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8686
金钱
8686
注册时间
2020-5-11
在线时间
4168 小时
发表于 2020-11-5 19:30:46 | 显示全部楼层
sukie 发表于 2020-11-5 10:22
单频正弦波可以搞定,我用的查表法,DAC+TIM+DMA产生的,就是不同频率的正弦波叠加不懂。

实在理解不了,就整两路单频信号,通过运放加法器加到一起.
专治疑难杂症
回复

使用道具 举报

11

主题

2154

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4947
金钱
4947
注册时间
2015-1-10
在线时间
620 小时
发表于 2020-11-6 08:45:37 | 显示全部楼层
两个正弦函数通过定时器确定当前时刻下各个函数的相角,然后两个函数的值加起来,再送DAC
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 15:05

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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