OpenEdv-开源电子网

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

STM32库中用DAC输出正弦波的表格

[复制链接]

6

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2012-2-26
在线时间
0 小时
发表于 2013-7-2 21:34:07 | 显示全部楼层 |阅读模式
最近学习用DAC输出正弦波,看到3.0库里面有个例程,看完之后有一些问题:
    1,就是正弦波的表格它是怎样弄出来的呢?表格中元素数量的多少对波形的有哪些影响呢?越多精度越高?

    2.为什么它里面需要这样呢?
    for (Idx= 0; Idx<32; Idx++)
  {
    DualSine12bit[Idx] = (Sine12bit[Idx] << 16) + (Sine12bit[Idx]);
  }
是不是高位与低位是对应正弦波的上下两个部分呢?

    3.TIM8的更新时间和DMA的DMA_InitStructure.DMA_BufferSize = 16;
这两个变量对输出的波形的频率是怎样的影响呢?是不是有一条公式可以计算出波形的频率呢?

小弟最近遇到上述这些问题,希望原子哥和各位前辈给小弟指点一下,谢谢!
他山之石,可以攻玉.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2012-10-27
在线时间
0 小时
发表于 2013-8-11 16:52:20 | 显示全部楼层
回复【楼主位】内有元基:
---------------------------------
关于第二个问题,我说说我的理解。
   这个程序的运行结果应该是PA4和PA5都能输出一样的正弦波,也就是两路是同时输出的,那使用的应该就是DAC_DHR12RD寄存器,使用DMA传输的话,就只需使用一个DMA通道,因为DAC_DHR12RD寄存器(32位)的[27:16]位存放的是DAC通道2的输出数据(12位),[11:0]位存放的是DAC通道1的输出数据(12位),所以给这一个寄存器赋值就能输出两路波形。而Sine12bit[]是12位的正弦波数据,要输出两路正弦波,就得在[27:16]位和[11:0]位都写入正弦波数据。DualSine12bit[Idx] 是32位的,最终是通过DMA传入DAC_DHR12RD寄存器的,所以需要在DualSine12bit[Idx]的[27:16]位和[11:0]位写入12位的正弦数据。
   DualSine12bit[Idx] = (Sine12bit[Idx] << 16) + (Sine12bit[Idx]);中Sine12bit[Idx] << 16是左移16位的意思,然后再加上Sine12bit[Idx],就给两路通道都写入值了,内容是一样的,并不是正弦
的上下两个部分。
不逼自己一下,就不知道自己会有多优秀
回复 支持 1 反对 0

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165462
金钱
165462
注册时间
2010-12-1
在线时间
2114 小时
发表于 2013-7-2 22:19:32 | 显示全部楼层
1,一般都是通过程序生成的,理论上,元素当然是越多,精度越高,当然是指一个周期里面的元素.呵呵.
2,这段代码貌似有问题.Sine12bit的使用有点怪.
3,频率和你的DAC转换速率有关系,貌似STM32的DAC最快也就100多KB左右的转换速率了.没事测过.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

54

主题

537

帖子

0

精华

高级会员

Rank: 4

积分
797
金钱
797
注册时间
2012-2-27
在线时间
7 小时
发表于 2013-8-11 17:47:10 | 显示全部楼层
楼主效果怎么样啊?
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2017-7-8
在线时间
13 小时
发表于 2017-8-9 11:55:13 | 显示全部楼层
楼主求发例程,
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-20 12:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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