你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F0系列ADC CH17用法

[复制链接]
刚声打火机 发布时间:2015-10-13 16:24
目前F0系列的MCU,我只用过F030和F051(F031)两者各有自己的Reference Manual 以及 DataSheet


我发现ST的文档还是比较坑的,就如何利用内部CH17通道ADC采样求得VCC电压,F030的参考手册里面并没有
解释得很清楚,网上的帖子也是一大堆,不过没有一个准确的,至少我没找到。


今天就这个问题,作一个笔记,方便以后查阅:
首先,我们翻开F030的DataSheet来看看(F030的DataSheet:DS9773
1.png

看看这段英文,大概的意思就是MCU有一个内部参考电压,是和ADC通道17相连的。ST公司在MCU
生产过程中,会在这样一个环境下对MCU作一个校准:
温度30度,为MCU加上较为精确的3.3V电压时,获取ADC CH17的AD值Vrefint_cal,并且把此AD值记录
到MCU的内部存储器里面作为一个只读的数据,作为参考。此数据地址为0x1ffff7ba,长度2字节

然后呢?怎么用呢?datasheet就没下文了,好吧,那我们再去查查Reference Manual
找到STM32F030的[RM0360],找到ADC这一章,204页(我这个是Rev3的)
2.png

我想说:然并卵!!!
file:///C:/Users/Administrator/AppData/Local/YNote/data/qq64CFFFD5BCF5D79E15E658E5AFC24512/e77d702919e9404aafe723892f30752b/clipboard.png

看到这里我突然无语了,只讲了内部温度如何求得,居然没讲内部参考电压的用法!!!
所以我说ST的文档坑呢。。。


不过还好,我发现虽然这个RM0360里面没有提及VREFINT的用法,但是另一款MCU
STM32F051的参考手册里面有说到:

打开[RM0091]
file:///C:/Users/Administrator/AppData/Local/YNote/data/qq64CFFFD5BCF5D79E15E658E5AFC24512/b7f2c021c1b1452b8ee1cf39f729f6f9/clipboard.png
3.png

终于找到了用法,这段英文大概的意思是这样的:
VDDA提供电压给MCU(MCU能工作的前提条件),但是VDDA的值可能是波动的,或者我们不能知道
其精确值,那么内部的参考电压VREFINT和记录在MCU里的参考值会帮助我们求得当前VDDA的精确值
并且给了一个很简单的公式。
VREFINT_CAL 就是前面提到的生产时记录到MCU内部的一个数据
VREFINT_DATA 则为ADC CH17采集到的AD值


自此,我们终于知道这个内部参考电压是怎么用的了,简单的讲,就是:
当我们无法知道当前VDD的值到底是多少时,可以利用ADC CH17采样值
以及MCU内部的参考值去求得


此方法,我已经做过实验了,F030和F051上都试过,并且应用于实际产品(估算电池电量),准确性还是挺高的。


PS:
        从公式来看,VDD越高,CH17的值越小;VDD越低,CH17的值反而越大
那么,内部的原理图到底是怎样的呢?很好奇。
















































收藏 7 评论16 发布时间:2015-10-13 16:24

举报

16个回答
foxglove 回答时间:2015-10-13 17:15:29
准确性还是挺高
kingsings 回答时间:2015-10-14 00:18:11
按理说,电源电压变了,这时候量化值应该也会变,如果同比例减小,那么采到的数据应该不会变化。
就是不知道他的量化值是否由一个与电源无关的恒压参考源提供
disheng4688 回答时间:2015-10-14 17:02:55
学习

                     
STM32LEARN 回答时间:2015-10-14 07:49:38
学习了  
yubinwu_3004964 回答时间:2015-10-14 21:12:10
楼主的探索精神赞一个
埃斯提爱慕 回答时间:2015-10-15 10:28:53
提示: 作者被禁止或删除 内容自动屏蔽
yceast 回答时间:2015-10-15 10:43:39
楼主好人  最近内部测温测出来70多度 正在困扰
安臣 回答时间:2015-10-15 12:20:16
为毛我总是搞不定
ruilimeng 回答时间:2015-10-21 11:46:45
谢谢分享!
eshui 回答时间:2015-10-21 11:55:51
非常好的资料,非常感谢分享
wolfgang 回答时间:2016-3-1 17:31:29
这帖讲得透彻
追梦者11号 回答时间:2016-10-17 17:07:01
感谢分享
zbber 回答时间:2016-10-17 21:05:19
按理说,电源电压变了,这时候量化值应该也会变,如果同比例减小,那么采到的数据应该不会变化
C106工作室 回答时间:2017-8-17 16:16:27
问题是,,怎么读取这个  第17通道?需要打开什么吗?
12下一页

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版