打印
[STM32F0]

求教版主,stm32f030内部基准电压如何做的出厂校正

[复制链接]
7819|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yfyh|  楼主 | 2014-8-20 16:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yfyh 于 2014-8-20 16:40 编辑

目前正在做一个项目,选用的是stm32f030f4芯片,主要是引脚数满足我的需求,而且看里面不仅有内置的VREF,而且还做过出厂校正,AD采样方面应该能满足我的要求,不像stm32f1系列,内置参考电压没有出厂校正,基本不可用。

可是我真用内置参考电压的时候,就开始头大了:
芯片手册里是说,在0x1FFFF7BA这个地址存了一个16位的数,是在3.3V供电,30摄氏度的情况下,测出来的基准电压AD值。芯片手册里面还说了,基准电压的取值范围是1.16V到1.24V之间。
于是我就去这个地址读数据,读到0x617,计算一下,基准电压应该是3.3*0x617/0xFFF = 1.256V,超出了芯片手册里面所标的1.24啊?自相矛盾?
先不管这个了,继续研究。我实测电压是3.28V,采用最长的采样时间,温度大约28度,采到的是0x600,推算出VREF = 3.28*0x600/0xFFF = 1.230V。
参考电压出厂值跟我的实测值误差约26mV,推算出的电源电压约有70mV的误差,这个精度,跟1117之类的3.3V稳压器作为参考源相比已经没有优势了。

瞬间蛋碎。。。
不知道是不是我的使用方法有问题?否则ST的出厂校正真是形同虚设啊!

沙发
airwill| | 2014-8-20 17:51 | 只看该作者
应该是这段话吧
    The internal voltage reference (VREFINT) provides a stable (bandgap) voltage output for the ADC. VREFINT is internally connected to the ADC_IN17 input channel. The precise voltage of VREFINT is individually measured for each part by ST during production test and stored in the system memory area. It is accessible in read-only mode.

这里没有说ST进行出厂校正, 而是出厂检测, 并将检测结果保存在下面这个地址.
0x1FFF F7BA - 0x1FFF F7BB

使用特权

评论回复
板凳
mmuuss586| | 2014-8-20 17:55 | 只看该作者
可以输入一标准信号,自己做软件校准啊;

使用特权

评论回复
地板
yfyh|  楼主 | 2014-8-20 19:50 | 只看该作者
airwill 发表于 2014-8-20 17:51
应该是这段话吧
    The internal voltage reference (VREFINT) provides a stable (bandgap) voltage outp ...

谢谢版主的回复!
确实不是能说是校正,说是测量更符合手册的原意。
但我是理解应该是没错的,不影响我上文的逻辑。

使用特权

评论回复
5
yfyh|  楼主 | 2014-8-20 19:53 | 只看该作者
mmuuss586 发表于 2014-8-20 17:55
可以输入一标准信号,自己做软件校准啊;

有考虑过,一是布板空间受限,二是小小地质疑一下这个功能:lol

使用特权

评论回复
6
aw50420181750| | 2015-1-30 16:16 | 只看该作者
那IC内部温度参考形同虚设,光是参照Vref就有1.16~1.24这大变化,内部IC的温度斜率4.3mv每度,要拿这个参照来测内部温度就是坑,能差十几度。

使用特权

评论回复
7
jaygeng| | 2016-10-17 17:00 | 只看该作者
那么感觉就不能用了,还想用着个东西,我单片机就不需要加LDO了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

粉丝