22902|16

79

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

实测STM32的DAC性能,让我有些失望(输出电压不是单调的) [复制链接]

CPU是100脚封装,512K的STM32F103VET6, 有独立的参考电压管脚。
(1)参考电压接2.5V的参考稳压源(LM285-2.5)。
(2)DAC1输出串联1K电阻接LM358同相输入端.
 (3) 万用表是UT71B(4位半)。

直接测量CPU的DAC1管脚的电压, 测试结果如下:

寄存器    DAC1管脚电压V
0    0.0584
1    0.0583 
2    0.0598
3    0.0580 

4    0.0604
5    0.0594
6    0.0602
7    0.0578

8    0.0606
9    0.0602
10    0.0615
11    0.0593

12    0.0614 (异常值,测量了多次均如此)
13    0.0601
14    0.0605
15    0.0578

16    0.0607
17    0.0605
18    0.0621
19    0.0602

20    0.0626

2000    0.6608
2001    0.6618
2002    0.66
2003    0.6634
2004    0.6603
2005    0.6629

4090    1.4427
4091    1.4566
4092    1.4468
4093    1.4568
4094    1.4571
4095    1.4820

注:
(1)IO脚浮空状态也测量过,跟上面的值相差在1mV内, 但变大变小的规律是一样的.
(2)寄存器每递增4个值才能保证大部分输出是单调递增的,也就是说大部分情况只有10bit分辨率,但有一个异常值12, 0.0614v说明连10bit分辨率都达不到。

我的疑问: 
(1) 输出电压为何不是单调递增的?
(2) 当数据寄存器值等于 4095时,为何输出不是2.5V, 就算按手册的指标也应该有2.5-0.2v = 2.3V.

希望高人指点一下, 如果STM32的DAC的性能却是如此,那我们必须得加一个专业的12bitDAC芯片了. 


此帖出自stm32/stm8论坛

最新回复

                                 对了,用的双通道。  详情 回复 发表于 2011-1-9 19:04
点赞(1) 关注(1)
 

回复
举报

68

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

不好意思. 是板子的参考电压源有问题

                                 上面的测试结果有问题,我的板子的参考电源源不正常(期望是2.5,实测1.4820).  等我修改好后再测。
此帖出自stm32/stm8论坛
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

参考电源电压不正确的原因

之前测量过参考电压是对的, 今天再测不正确, 原因是:
DAC的时钟关闭时,测量参考电压是2.499V
DAC的时钟打开时,测量参考电压是1.482V

解决办法: 减小LM285的串联电阻.
此帖出自stm32/stm8论坛
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

4
 

改正以后的测试结果如何?

                                 有意思的经验。
此帖出自stm32/stm8论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

5
 

DAC

                                 开buffer后的有上下200mV的非线性..其他感觉还可以
此帖出自stm32/stm8论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

6
 

或者可以先把358部分的回路断开,测试一下?

既然直接测DAC的管脚,建议把358回路断开和接上分别测一组数据,对比一下结果看看?
另:358 用的多少V供电?
(我主要是想不通这个:“3楼: 参考电源电压不正确的原因。。。。。。。。。解决办法: 减小LM285的串联电阻.”)
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

7
 

STM32的DAC

                                   STM32的DAC,印象里是(在没有开buffer时)电阻式的,所以按理说输出电压应该是单调的。我没有实测过,上面说“开buffer后的有上下200mV的非线性”,这种情况或许是有的。
此帖出自stm32/stm8论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

8
 

倒是说说测试后效果啊。

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

9
 
                                 这个后来怎么处理呢?
此帖出自stm32/stm8论坛
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

10
 
                                 我用万用表测试,怎么在0.002递增,多次转换的时候,就用两个值一直在那里循环跑?
此帖出自stm32/stm8论坛
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

11
 
                                 呵呵,这个我还真的用过,没有开缓冲,效果还不错的,而且都没用基准,直接接到的电源,呵呵。
此帖出自stm32/stm8论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

12
 
                                 有些问题大部分是自身的问题,或者不太了解CPU的组成造成的,他的DA在用内部的缓冲器的时候确实存在问题,据版主说也不是轨到轨的。
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

13
 
                                 LM358 这种Vio mV级的东西去做DAC 的跟随是勉为其难了。
此帖出自stm32/stm8论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

14
 
                                 确实是勉为其难。
此帖出自stm32/stm8论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

15
 
我是开了缓冲,系统16MHZ,
为什么我要在开始初始化后,软件触发3次后,3次分别为不同值,才不再递增?
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

16
 
                                 就是我把358拆掉,DAC空载的时候,也要这样处理,到底是为什么呢?
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

17
 
                                 对了,用的双通道。
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表