OpenEdv-开源电子网

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

小白求助,如何输出相位差为90°的正弦波和余弦波

[复制链接]

3

主题

9

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2023-10-15
在线时间
11 小时
发表于 2023-10-15 12:11:38 | 显示全部楼层 |阅读模式
1金钱
大家好,问一下如何输出两路相位差为90°的波形呢。用了DMA,发现有通道优先级,无法控制相位差,还有什么别的办法吗?就是图中这样的波形

波形

波形

最佳答案

查看完整内容[请看2#楼]

1.启动DMA只需一次,应放在while(1)之前。 2.不用DMA直接输出波形的代码要放在while(1)里,否则它就只执行一遍、输出一个周期就完了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8205
金钱
8205
注册时间
2020-5-11
在线时间
3700 小时
发表于 2023-10-15 12:11:39 | 显示全部楼层
zxcvd123zxcvd 发表于 2023-10-16 23:07
你好,我是用CUBEMX写的代码,定时器选择了tim2,然后我给DMA这儿加了个延时,发现能到90°左右,不过两 ...

1.启动DMA只需一次,应放在while(1)之前。
2.不用DMA直接输出波形的代码要放在while(1)里,否则它就只执行一遍、输出一个周期就完了。
专治疑难杂症
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2023-10-15
在线时间
11 小时
 楼主| 发表于 2023-10-16 10:13:04 | 显示全部楼层
还有如何稳定两个波形的相位差呢?用示波器发现两波形的相位差一直在跳动,不稳定。。。
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8205
金钱
8205
注册时间
2020-5-11
在线时间
3700 小时
发表于 2023-10-16 10:21:11 | 显示全部楼层
你的代码弄上来
专治疑难杂症
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2023-10-15
在线时间
11 小时
 楼主| 发表于 2023-10-16 23:07:41 | 显示全部楼层

你好,我是用CUBEMX写的代码,定时器选择了tim2,然后我给DMA这儿加了个延时,发现能到90°左右,不过两个波形的相位差一直在跳动(88°到94°),然后第三幅图就是我不用DMA想输出波形,发现接到示波器没反应。。。

正弦点

正弦点

循环

循环

只用DAC

只用DAC
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 19:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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