OpenEdv-开源电子网

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

DAC的输出缓存问题

[复制链接]

7

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2015-2-2
在线时间
5 小时
发表于 2016-6-2 11:10:41 | 显示全部楼层 |阅读模式
10金钱
我用stm32的DMA+DAC生成正弦波,用TIM2触发,未使能输出缓存时波形正常,使能缓存后波形底部出现失真。因为我是打算直接用stm32的输入捕获模块捕获正弦波的,所以如果不使能输出缓存的话DAC的驱动能力不足,是不能被正常捕获的。但是我使能之后波形底部就失真了。请问为什么会出现这种现象?原子哥的手册里写的输出不能到0对这个有影响吗?为什么它的输出不能到0?DAC采样点数增多可以改善这种现象吗?一堆问题,还请大神赐教

876083458964486001.jpg

最佳答案

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

1 因为用了缓存 所以输出不能到0,所以底部失真了。 2采样点数增多解决不了这个问题。 可以把峰值减小来解决这个问题,就是说底部输出到最小值,而不到0,就不会失真了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

22

主题

751

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1606
金钱
1606
注册时间
2015-6-10
在线时间
223 小时
发表于 2016-6-2 11:10:42 | 显示全部楼层
1 因为用了缓存 所以输出不能到0,所以底部失真了。
2采样点数增多解决不了这个问题。
可以把峰值减小来解决这个问题,就是说底部输出到最小值,而不到0,就不会失真了。
回复

使用道具 举报

7

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2015-2-2
在线时间
5 小时
 楼主| 发表于 2016-6-2 12:01:34 | 显示全部楼层
解决了,我把所有的数据乘上一个数再加上一个数,把峰值抬高同时保证不超过4096(12位DAC精度最大值),感谢二楼~
回复

使用道具 举报

3

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2016-5-9
在线时间
8 小时
发表于 2017-2-5 22:35:55 | 显示全部楼层
有个基础知识麻烦问问大家,dac增加输出缓冲功能是能提高驱动能力吗?还是有其他作用呢
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-8-24 17:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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