OpenEdv-开源电子网

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

内部DAC输出100K正弦波 且频率可调

[复制链接]

10

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-11-24
在线时间
0 小时
发表于 2013-7-8 01:05:05 | 显示全部楼层 |阅读模式

用DAC+DMA+TIM2输出正弦波   码表为100个点  。TIM2定时到1us,但是只能输出到1Khz,而且误差为20hz

请问1:是不是输出100K的正弦波 只能通过牺牲码表点数来实现
       2:DAC转换时间是不是1us,那码表点数多了,误差是不是会变大啊
    

------------------------------------------------------------------------------------------------------------------------------
上传了一个是测数据的时候用的,不怎么规范,除了寄存器配置,其他都可以忽略的。。。

产生正弦信号.rar

36.52 KB, 下载次数: 4395

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

使用道具 举报

0

主题

15

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
274
金钱
274
注册时间
2014-12-9
在线时间
60 小时
发表于 2015-7-14 16:30:00 | 显示全部楼层
手册上DAC的速度为250K,要出100K的正弦波,最多只能到25点,这样的正弦波输出还有精度可言吗?不知道楼主是怎么做到输出100K正弦波的。求指导
回复 支持 1 反对 0

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2015-5-8
在线时间
0 小时
发表于 2015-6-3 10:32:38 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,针对DA的相关测试代码如下:

u16* p = gSampleArray;
for(i = 0; i < 256; ++i, ++p)
    DAC_SetChannel1Data(DAC_Align_12b_R, *p);//设置DAC值

gSampleArray是一个周期的256个采样值组成的数组;
通过示波器观察,产生的正弦波频率为18.18kHz,是不是可以说DA转换的时间要小于下面的值:
1000000/18180/256=0.215us

但是文档“STM32F4 开发指南(库函数版)”第342页:
“我们可以从 STM32F407ZGT6 的数据手册查到 tsettling的典型值为 3us ,最大是 6us 。所以 DAC 的转 换速度最快是333K左右。”

这个怎么理解呢?
回复 支持 1 反对 0

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-8 10:19:09 | 显示全部楼层
1,必须的.STM32的DAC转换速度在2.5Mhz左右,你要100个点,最多得到25Khz左右的频率.
2,DAC转换时间不是1us,比1us快,大概0.4us左右吧.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

10

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-11-24
在线时间
0 小时
 楼主| 发表于 2013-7-10 11:36:53 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,原来我是TIM2 TRGO事件做DAC1的触发选择 然后通过DMA输出。可以实现了。
现在把TIM2换成TIM3和TIM4都不行,但手册上说可以选择TIM3和TIM4的TRGO触发DAC1.这是怎么回事啊?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-10 14:21:15 | 显示全部楼层
回复【3楼】兜里有糖:
---------------------------------
你检查下配置吧.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

10

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-11-24
在线时间
0 小时
 楼主| 发表于 2013-7-10 16:34:18 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
哈哈,可以啦,忘了配置DMA通道了,还是原子哥厉害啊~
回复 支持 反对

使用道具 举报

20

主题

79

帖子

0

精华

初级会员

Rank: 2

积分
193
金钱
193
注册时间
2013-6-2
在线时间
2 小时
发表于 2013-7-15 16:23:02 | 显示全部楼层
回复【5楼】兜里有糖:
---------------------------------
能不能把源码贴上开看下。?我想学习下。。。
坚持到底就是胜利!
回复 支持 反对

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2013-7-10
在线时间
0 小时
发表于 2013-7-17 16:30:40 | 显示全部楼层
回复【5楼】兜里有糖:
---------------------------------
能不能把源码贴上开看下。?想看看
回复 支持 反对

使用道具 举报

10

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2012-11-24
在线时间
0 小时
 楼主| 发表于 2013-7-17 19:53:20 | 显示全部楼层
前几天忙着比赛的东西,现在才看见,各位不好意思啊~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-3 23:18:16 | 显示全部楼层
回复【9楼】backroad:
---------------------------------
等于说你这是超频跑一样。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2015-5-8
在线时间
0 小时
发表于 2015-6-4 08:26:08 | 显示全部楼层
回复【10楼】正点原子:
---------------------------------
我就是在标准例程-库函数版本,实验21 DAC实验上进行测试的,频率什么的都没有改,如果是超频跑,这个起作用的频率设置在哪里呢?

如果可以超频,我想测试将频率继续提高看看,我需要将正弦波的频率提高到50kHz左右,谢谢呀。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-4 22:28:50 | 显示全部楼层
回复【11楼】backroad:
---------------------------------
不建议。

你要50hz,大可以不用256个点一个周期。
你设置50个点一个周期,速度就快了5倍了。。。。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2015-2-10
在线时间
10 小时
发表于 2015-6-11 11:31:50 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
书上267页写的Tsettling是4US,所以DA速度是250K左右
原子哥为何这里又说是2.5M?
STM32还是有搞头的..
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-11 22:14:52 | 显示全部楼层
回复【13楼】sharon:
---------------------------------
说错了,有误。不好意思啊。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2015-2-10
在线时间
10 小时
发表于 2015-6-12 20:29:19 | 显示全部楼层
回复【14楼】正点原子:
---------------------------------
是这里错了还是书上错了?
STM32还是有搞头的..
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-12 22:09:35 | 显示全部楼层
回复【15楼】sharon:
---------------------------------
以手册为准
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

15

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
274
金钱
274
注册时间
2014-12-9
在线时间
60 小时
发表于 2015-7-14 17:11:14 | 显示全部楼层
回复【17楼】落画飞雪:
---------------------------------
说错了,是2.5个点。
回复 支持 反对

使用道具 举报

13

主题

206

帖子

1

精华

高级会员

Rank: 4

积分
613
金钱
613
注册时间
2014-10-26
在线时间
32 小时
发表于 2015-7-27 21:31:16 | 显示全部楼层
赞美,学习下
学习!
回复 支持 反对

使用道具 举报

2

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2014-8-8
在线时间
11 小时
发表于 2017-4-7 12:30:31 | 显示全部楼层
可以的666
回复 支持 反对

使用道具 举报

36

主题

227

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3096
金钱
3096
注册时间
2016-4-15
在线时间
350 小时
发表于 2017-8-5 10:16:21 | 显示全部楼层
666666666666666666666666666
回复 支持 反对

使用道具 举报

0

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
172
金钱
172
注册时间
2013-9-9
在线时间
28 小时
发表于 2017-10-25 11:45:19 | 显示全部楼层
66666666666666
回复 支持 反对

使用道具 举报

52

主题

247

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2017-8-19
在线时间
160 小时
发表于 2018-3-26 16:54:24 | 显示全部楼层
谁能告诉我你们在说什么。。
回复 支持 反对

使用道具 举报

32

主题

183

帖子

0

精华

高级会员

Rank: 4

积分
617
金钱
617
注册时间
2013-1-16
在线时间
131 小时
发表于 2018-6-22 14:09:43 | 显示全部楼层
正点原子 发表于 2013-7-8 10:19
1,必须的.STM32的DAC转换速度在2.5Mhz左右,你要100个点,最多得到25Khz左右的频率.
2,DAC转换时间不是1us,比 ...

大佬。stm32f051dac转换时间了
回复 支持 反对

使用道具 举报

5

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
179
金钱
179
注册时间
2018-10-2
在线时间
26 小时
发表于 2019-5-30 17:44:36 | 显示全部楼层
落画飞雪 发表于 2015-7-14 17:11
回复【17楼】落画飞雪:
---------------------------------
说错了,是2.5个点。

那加上DMA的情况下呢?能达到多少?
回复 支持 反对

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2019-5-30 17:57:09 | 显示全部楼层
码表为100个点  。TIM2定时到1us,是10K吧
这做方式严格来说是不能算可调, 比如10.5K就去不了
回复 支持 反对

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2019-5-30 17:58:34 | 显示全部楼层
落画飞雪 发表于 2015-7-14 16:30
手册上DAC的速度为250K,要出100K的正弦波,最多只能到25点,这样的正弦波输出还有精度可言吗?不知道楼主 ...

手册上是说1MHz吧
回复 支持 反对

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2019-5-30 18:08:11 | 显示全部楼层
sharon 发表于 2015-6-11 11:31
回复【2楼】正点原子:
---------------------------------
书上267页写的Tsettling是4US,所以DA速度是250K ...

4us是指 10bit full scale transition的条件下
比如之前是写了0, 之后你再写1024, 这时候的反应时间最长为4us
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2019-7-14
在线时间
0 小时
发表于 2019-7-14 21:49:30 | 显示全部楼层
兜里有糖 发表于 2013-7-10 11:36
回复【2楼】正点原子:
---------------------------------
原子哥,原来我是TIM2&nbsp;TRGO事件做DAC1的触 ...

能分享一下代码吗?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-11 03:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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