打印

RTC备份数据区与ADC电源关系???

[复制链接]
5576|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fqingy2003|  楼主 | 2009-5-6 15:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在使用STM32F103RB时,出现了断电后再上电时备份数据区数据丢失的现象,不知道是什么原因,最初在设计的时候芯片核的电源(数字部分电源)和ADC的电源是相连的,备份数据区的数据没有丢失,现在将ADC的电源单独采用一个电压基准芯片供电后,断电再上电发现备份数据区的数据丢失了,全部为0包括时间。为提高ADC精度,又不丢失备份数据区数据,哪位仁兄有好的建议,感谢!!
沙发
fqingy2003|  楼主 | 2009-5-6 16:00 | 只看该作者

RTC备份数据区与ADC电源关系???

最近在使用STM32F103RB时,出现了断电后再上电时备份数据区数据丢失的现象,不知道是什么原因,最初在设计的时候芯片核的电源(数字部分电源)和ADC的电源是相连的,备份数据区的数据没有丢失,现在将ADC的电源单独采用一个电压基准芯片供电后,断电再上电发现备份数据区的数据丢失了,全部为0包括时间。如果我将现在的电路板的ADC电源链接到数字电源上,数据就不丢失了。为提高ADC精度,又不丢失备份数据区数据,哪位仁兄有好的建议,感谢!!

使用特权

评论回复
板凳
barboon| | 2009-5-6 16:04 | 只看该作者

RTC备份数据区与ADC电源没关系

lz可以检查一下,VBAT管脚上的电源有没有问题。

使用特权

评论回复
地板
香水城| | 2009-5-6 16:07 | 只看该作者

在断电时,请保证同时切断VDD和VDDA

请用示波器看看,怀疑断电时你的VDDA下降的太慢,而VDD很快消失。

在断电时,应该保证同时切断VDD和VDDA。

使用特权

评论回复
5
fqingy2003|  楼主 | 2009-5-6 16:17 | 只看该作者

RTC备份数据区与ADC电源关系???

不管是VDDA下降慢,还是VDD下降慢,我认为这个芯片的工作与否不应该受VddA的影响,如果说备份电池数据受VDDA的影响的话,应该在手册中有说明,我还认为当不使用ADC时我们可以不给ADC供电,为什么说呢,当模拟、数字电路分离时,模拟电源可能故障失电,数字部分存在电源,当然正常工作的CPU可以通过程序检查到ADC部分出错,现在根据实验发现,ADC失电后芯片根本不工作。如果说一定要同时切断电源的话就必须连接到同一电源上,要不肯定丢数据呀,香主你说呢

使用特权

评论回复
6
fqingy2003|  楼主 | 2009-5-6 16:50 | 只看该作者

RTC备份数据区与ADC电源关系???

香主分析的对,但是我就是不明白VDDA必须要先断电,这是为什么呢。我总是认为这个问题不应该出现,至少我认为VDDA自然为独立电源引脚,为什么内核工作受VDDA的影响呢

使用特权

评论回复
7
fqingy2003|  楼主 | 2009-5-7 11:04 | 只看该作者

RTC备份数据区与ADC电源关系???

从这个图上我的理解是PLL必须一直工作直到VDD断电后切换到VBAT,VDDA再断电,或者说同时断电,由于先检测到低压信号,Vbat被切换到备份电源上,保证数据不丢失,但是我现在实验成功不丢数据是在VDDA先失电,VDD后失电数据不丢失,不知道我的理解是否正确,实现实验的结果是,Vdda先于Vdd断电数据不丢失,但是我没有想明白PLL为什么要在VddA上,因为VddA和Vdd可能会使用不同的电源,还有一点不明白Vbat在不使用电池时必须连接到Vdd,芯片才能工作,如果悬浮或者电池无电将导致芯片不工作,这是两个致命的缺点,电池无电是常有的事情,多路电源出现一路故障也时有发生,如果说没有VDDA和Vbat芯片不工作,将是一个严重的问题。

使用特权

评论回复
8
香水城| | 2009-5-7 11:21 | 只看该作者

RTC备份数据区与ADC电源关系,以及VDD与VDDA的关系

最近正在翻译大容量的STM32F103数据手册,正好供电部分的说明与中等容量STM32F103说明一样,下面贴图中的2.3.11节与STM32F103RB数据手册中的2.3.9节内容相同,你可以对照着看:



从关于VDDA的说明中可以看到,VDDA不单是为ADC供电,它为所有的模拟部分供电,特别是复位模块,这就回答了你的“不使用ADC时我们可以不给ADC供电”这个问题。

关于VBAT部分说明了当关闭VDD时,通过内部电源切换器,VBAT为RTC、外部32kHz振荡器和后备寄存器供电。这里说的内部电源切换器就是下图中靠近VBAT的“供电开关”,下面这张图就是上面贴图中提到的图12:



这张图中没有说明这个供电开关是由哪个电源控制,但从图上看可以认为是VDD控制。

关于你的问题(包括在6楼提的问题),我是这样分析的:VDD先掉电,在VDDA还没有完全掉电时,因为内部漏电流,上述供电开关并没有切换到VBAT,而此时VDD已经消失,造成RTC内容丢失。正因为如此,数据手册上才会要求VDD应与VDDA同源,同时他们之间的电压差不能超过300mV。

如果这个供电开关是由VDDA控制,那么你看到的现象就是显而易见了。不过这一点我需要确认。

使用特权

评论回复
9
香水城| | 2009-5-7 11:59 | 只看该作者

"AN2586-STM32F10xxx硬件开发入门"中说明:供电开关由PDR控制

在应用笔记《AN2586-STM32F10xxx硬件开发入门》中,我找到了9楼所提到的供电开关是由VDDA控制的清楚说明。

这里是有关部分截图,这个文档的中文译文在ST MCU中文网页上:


文中红线划出的部分写明:VBAT的开关由复位模块内的掉电复位(PDR)电路控制。再根据9楼提到的部分,复位模块由VDDA供电。所以当VDDA晚于VDD调电时,VBAT的开关还没有切换到VBAT,VDD已经消失了,RTC的内容自然也就消失了。


关于8楼提到的多电源问题,手册上已经明确写明,VDD必须与VDDA同源,所以不应理解为是多电源供电。

至于VBAT缺失和电池没有电是2个问题,VBAT缺失的情况时,电路上有相应处理,所以不会有问题;而电池没有电的情况下,并不表示VBAT信号悬空,此时VBAT是通过电池接地,也不会有问题,只不过RTC的内容不能继续维持。电池没有电时好像应该是等效于一个电容加一个电阻,具体什么样的参数我不太清楚,但我可以肯定不是一个无穷大的电阻。

使用特权

评论回复
10
luxinsun| | 2009-5-9 16:01 | 只看该作者

感谢香水城的详细分析

感谢香水城的详细分析。
8楼的“这是两个致命的缺点,电池无电是常有的事情,多路电源出现一路故障也时有发生,如果说没有VDDA和Vbat芯片不工作,将是一个严重的问题。”
吓我一身冷汗。

使用特权

评论回复
11
fqingy2003|  楼主 | 2009-5-12 09:40 | 只看该作者

RTC备份数据区与ADC电源关系???

现在看来对于STM32的设计那是相当的不一样,大家以后设计的时候不要想当然,一定要仔细阅读说明文档的每个细节,要不,设计会走弯路,当然也会带来一个麻烦就是不同用途的地方很多要求不一样,我从来都不会想象到PLL会挂在VDDA上,常理上PLL电路应该属于数字部分。可偏偏挂在了VDDA上。

使用特权

评论回复
12
fqingy2003|  楼主 | 2009-5-12 09:51 | 只看该作者

RTC备份数据区与ADC电源关系???

由于Vdd的电压不稳定,在大量的IO来回动作的情况下,VDD的电压极度不稳定,当然如果VddA也连接到VDD的话,对于48脚和64脚封装的芯片来讲Vdda连接到VDD对于要求高精度的应用来讲,这个应该是不充许的,我使用的就是103VB,如果将VDDA连接到VDD,此时的AD采样误差明显低于VDDA与VDD分离的误差,我将VDDA连接到一个3.3V的参考电压芯片上了。一般的芯片VDDA和VDD都是可以分离供电的,至少我看见过的,ST的除外。

使用特权

评论回复
13
ijk| | 2009-5-12 10:03 | 只看该作者

PLL电路

  PLL电路似乎不可能是纯数字电路,至少VCO应该用模拟电路。

使用特权

评论回复
14
aaron238| | 2009-5-14 13:13 | 只看该作者

如果要提高 ADC 的精度的话! 就比较难了!

使用特权

评论回复
15
511| | 2009-7-25 21:33 | 只看该作者

关注,

使用特权

评论回复
16
fqingy2003|  楼主 | 2009-8-25 11:23 | 只看该作者
有的人理解模拟电路和数字电路太较劲了,PLL电路虽然是模拟电路,但是它可以挂在数字电源上呀,为什么让Vdda与Vdd分离,主要是为了给ADC一个稳定电源,至少在同等条件下,如果ADC的电源稳定,其精度也会相对更高呀。不管怎么说,这个ADC的电源是需要改进的,尤其是小封装的,居然Vref+都不引出来,不能说体积小就不要求ADC的精度了吧,再说了,一个Vref+引脚也就增加你0.0001元的成本,但给了用户一个方便,何乐而不为呢!

使用特权

评论回复
17
香水城| | 2009-8-25 11:34 | 只看该作者
17楼的意思是否是说:PLL电路可以不需要较为稳定的电源,它的工作不会受数字部分的干扰?

请问,你有什么根据提出这样的说法?你不怕PLL电路受干扰**,从而影响整个系统的工作?

还有,“一个Vref+引脚也就增加你0.0001元的成本”,这是怎么算出来的?

使用特权

评论回复
18
fqingy2003|  楼主 | 2009-8-25 13:54 | 只看该作者
至少在别人家的CPU上没有这样的,将PLL挂在VDDA上,版主,学习是无止境的,如果你说的对,请看看同行业的NXP,看看人家的cortex3是怎么作的,你就不会再跟我争这个问题了,有不足就向ST反映情况,加速STM32的成熟有什么不好呢,以前我向朋友推荐这个,可是老有一些不同寻常的问题,不过都能解决,可是这个问题是我们无法解决得了的,虽然自己改进一些PCB能提高ADC的精度,毕竟我们希望得到更完美的东西是不,我想你也希望STM32是一个完美的CPU了

使用特权

评论回复
19
makesoft| | 2009-8-25 13:56 | 只看该作者
不过备份寄存器掉电时很郁闷的事情,早期的文档并没有显式说明VDDA和VDD以及备份寄存器之间的关系。

我和楼主一样,是受害者。

使用特权

评论回复
20
fqingy2003|  楼主 | 2009-8-25 13:57 | 只看该作者
居然问,一个Vref+引脚也就增加你0.0001元的成本”,这是怎么算出来的?
告诉你吧,随口说出来的,
连在VDDa上和引一个管脚出来,不就是一个管脚的钱吗,你最主要考虑的是完善芯片,而不是别的,好用不在乎1块2块的,多10块我也买

使用特权

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

本版积分规则

36

主题

124

帖子

0

粉丝