我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 606|回复: 0

关于RTC备份数据区数据丢失问题的讨论 - 单片机/处理器 -

[复制链接]

该用户从未签到

1万

主题

1292

回帖

2万

积分

管理员

积分
29577

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-3-29 10:59:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

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

答:在断电时,请保证同时切断VDD和VDDA 请用示波器看看,怀疑断电时你的VDDA下降的太慢,而VDD很快消失。在断电时,应该保证同时切断VDD和VDDA。

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

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

答:RTC备份数据区与ADC电源关系,以及VDD与VDDA的关系最近正在翻译大容量的STM32F103数据手册,正好供电部分的说明与中等容量STM32F103说明一样,下面贴图中的2.3.11节与STM32F103RB数据手册中的2.3.9节内容相同,你可以对照着看:


<ignore_js_op>





2009-11-26 16:41:49 上传
<strong>下载附件</strong> (37.55 KB)




</ignore_js_op>


从关于VDDA的说明中可以看到,VDDA不单是为ADC供电,它为所有的模拟部分供电,特别是复位模块,这就回答了你的“不使用ADC时我们可以不给ADC供电”这个问题。关于VBAT部分说明了当关闭VDD时,通过内部电源切换器,VBAT为RTC、外部32kHz振荡器和后备寄存器供电。这里说的内部电源切换器就是下图中靠近VBAT的“供电开关”,下面这张图就是上面贴图中提到的图12:


<ignore_js_op>





2009-11-26 16:41:49 上传
<strong>下载附件</strong> (18.41 KB)




</ignore_js_op>


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

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

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

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

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


<ignore_js_op>





2009-11-26 16:41:49 上传
<strong>下载附件</strong> (44.51 KB)




</ignore_js_op>


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

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

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

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

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

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

发表于2009/7/21
回复

使用道具 举报

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

本版积分规则

公告:服务器刚移机,
大家请不要下载东西。
会下载失败


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

( 闽ICP备2024076463号-1 ) 论坛技术支持QQ群171867948 ,论坛问题,充值问题请联系QQ1308068381

平平安安
TOP
快速回复 返回顶部 返回列表