打印
[其他ST产品]

STM32RTC 晶振相关摘录

[复制链接]
656|40
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
STM32RTC 晶振相关摘录

STM32的RTC晶振经常出现不起振的问题,这已经是“业界共识”了。。。很多人在各种电子论坛上求助类似于“求高手指点!RTC晶振不起振怎么办”的问题,而其答案基本可以概括为“这次高手帮不了你了”

更有阴谋论者提出让人啼笑皆非的解释——STM32的RTC晶振不起振是ST与晶振厂商串通后故意搞出来的,目的是提高某晶振厂商高端晶振的销量。。。

最近做的几块板子也用到了STM32的RTC,前后两版一共做了大概6片,幸运的是并未遇到晶振不起振的现象。而我采用的是3毛钱一个的普通晶振,并未选用传说中低负载高精度晶振。。。后来在另外一片实验性质的板子上首次遇到了晶振不起振的问题,而且做了2片都不起振,这才让我意识到这个问题的严重性。


使用特权

评论回复
沙发
发给她更好fh|  楼主 | 2022-9-29 10:47 | 只看该作者
从上述现象来看,我认为对RTC晶振起振影响最大的因素应该是PCB的布线。但是遇到问题时通常是PCB已做好,甚至已经做了几百块,没有回头路了。于是大家更关注的问题似乎就是“如何补救”了。在网上搜索一下,你就会发现世界是如此美好!每个人的经验和建议都不一样,甚至是完全相反的!这种现象告诉我们,除了PCB布线,对晶振起振影响最大的似乎不是电气参数,而是另外一种不可忽略的因素——人品!

使用特权

评论回复
板凳
发给她更好fh|  楼主 | 2022-9-29 10:48 | 只看该作者
各种相互矛盾的经验也告诉我们,导致晶振不起振的原因是多种多样的,也是因“人”而异的。也许,我们无法找到一个绝对有效的经验一举解决STM32的RTC晶振这个让人头疼的问题,但我们可以从各种经验中找到一些线索,为最终摸索到适合自己这块板子的解决方案提供一些帮助和提示。

使用特权

评论回复
地板
发给她更好fh|  楼主 | 2022-9-29 10:49 | 只看该作者
如果晶振不起振,尤其是你已经使用了传说中的爱普生6pF晶振后还是不行,也许你应该尝试对以下几个方面排列组合,找到适合你这块板子的,更容易起振的方式。

使用特权

评论回复
5
发给她更好fh|  楼主 | 2022-9-29 10:50 | 只看该作者
下面就罗列一下可能影响RTC晶振起振的因素
1. 晶振的品牌和负载电容
大家貌似都知道要用6pF的晶振,但我发现其实12.5pF的也可以用。大家都说KDS日本原装的好,我那个3毛钱的国产晶振貌似也没啥大问题。。。

使用特权

评论回复
6
发给她更好fh|  楼主 | 2022-9-29 10:51 | 只看该作者
晶振外接的匹配电容
有人说6pF的晶振要配6pF的电容。但有经验公式指出这个电容的值应该是晶振本身负载电容的两倍,6pF的晶振应该配10pF的匹配电容,当然12.5pF的就应该配20pF或者22pF的电容了~电容值不匹配可能造成晶振不起振。更神奇的是,有人指出去掉外接的匹配电容会使晶振起振!这似乎没啥道理,但在我的板子上,有且仅有这个方案是可行的!!!

使用特权

评论回复
7
发给她更好fh|  楼主 | 2022-9-29 10:52 | 只看该作者
晶振并联的反馈电阻
晶振可以并联一个高阻值的电阻,据说这样更容易起振。。。这个电阻的阻值有人说是1MΩ,有人说是5MΩ,也有人说是10MΩ,,,当然也有人说不能并联这个电阻,并联了反而不起振

使用特权

评论回复
8
发给她更好fh|  楼主 | 2022-9-29 10:58 | 只看该作者
XTALout到晶振间串联电阻
这种做法是官方的应用笔记指出的,而且给出了这个电阻的计算公式。对这个电阻的的必要性也是众说纷纭,同样存在两种矛盾的说法,即必须要有这电阻,否则不起振。还有一说不能有这个电阻,否则不起振。。。从官方的应用笔记来看,这个电阻的主要作用是保护晶振,以防晶振发热。由此看来这个这个电阻似乎并非影响晶振起振的主要因素,甚至可能让晶振更难起振。

使用特权

评论回复
9
发给她更好fh|  楼主 | 2022-9-29 11:00 | 只看该作者
晶振的外壳是否接地
这个就不用说了吧。。。晶振的外壳是金属的,做封装时可以把那个焊盘做成机械焊盘而悬空,也可以做成电气焊盘,然后连接到GND。对这个说法同样存在争议,有人说外壳必须接地,也有人说接地后反而不起振。

使用特权

评论回复
10
发给她更好fh|  楼主 | 2022-9-29 11:00 | 只看该作者
提高Vbat引脚的电源质量
这种说法是有一定道理的,因为RTC部分是由Vbat的来供电的。有人说Vbat引脚对电源质量要求比较高,如果纹波较大可能会影响晶振的起振。更有人说反而需要一些噪声,激励晶振产生正反馈从而顺利起振(本人对此表示呵呵)。。。但不管怎样,提高电源质量对大家都是好事~

使用特权

评论回复
11
发给她更好fh|  楼主 | 2022-9-29 11:02 | 只看该作者
晶振周围的环境
有人指出应该仔细清洗RTC晶振周围的电路,甚至是使用环氧树脂胶将晶振密封起来。这种说法得到了一些人的支持,看来也是有相当多的事实依据。

使用特权

评论回复
12
发给她更好fh|  楼主 | 2022-9-29 11:02 | 只看该作者
减少晶振焊接时加热的时间
有人认为长时间加热晶振进行焊接会对晶振本身带来影响,却不是彻底损坏晶振,从而使得晶振不容易起振。。。这种说法我没验证过,个人表示怀疑。。。

使用特权

评论回复
13
发给她更好fh|  楼主 | 2022-9-29 11:03 | 只看该作者
焊接的焊锡量
这个种说法感觉就更不靠谱了,但真的有人在晶振引脚上多加了点焊锡晶振就能起振了。从原理上说,多加点焊锡确实会改变晶振和PCB间的寄生参数,但我感觉影响微乎其微。。。可能晶振已经徘徊在临界值的边缘了,这种做法才会起到一点作用。

使用特权

评论回复
14
发给她更好fh|  楼主 | 2022-9-29 11:04 | 只看该作者
使用有源晶振
个人认为这是一劳永逸解决晶振不起振问题的不二法门!有人对STM32的RTC晶振不易起振的原因做了一个解释,即出于低功耗的考虑,STM32对晶振的驱动功率比较低,所谓“好鼓不用重锤”,一些差的晶振就需要更高的驱动功率,所以不易起振。我认为这种解释是有道理的。使用有源晶振则不存在驱动功率的问题,如果问题确实是因为驱动功率造成的,那使用有源晶振毫无疑问可以彻底解决问题。而且目前网上还没看到说有源晶振不起振的求助帖。但是有源晶振通常比较昂贵,甚至要比一颗外置的RTC芯片还要贵。至于这个问题的取舍,就要看各位看官自己的想法了

使用特权

评论回复
15
发给她更好fh|  楼主 | 2022-9-29 11:05 | 只看该作者
我从2014年开始使用STM32内部RTC用于产品,之前出现过很多问题,也换过很多晶振,比如按照ST推荐的6pF晶振,也出现很多问题,贴片的很贵的那种也用过几种,都不行,查询了一些晶振启振的资料,最后还是使用2mm的那种最便宜的晶振,使用过多个批次,每次200套左右,已经1000多套了,只有几套出现问题,并且更换晶振后都能够修复,卖出去的产品里面也只有一套出现问题了(我程序里面如果检测到RTC外部晶振故障,会多次重试,依旧不行会切换到内部晶振,并且设备联网可以校时)。

使用特权

评论回复
16
发给她更好fh|  楼主 | 2022-9-29 11:06 | 只看该作者

使用特权

评论回复
17
发给她更好fh|  楼主 | 2022-9-29 11:08 | 只看该作者
如何选择电容C1,C2?

(1):因为每一种晶振都有各自的特性,所以最好按制造厂商所提供的数值选择外部元器件。

使用特权

评论回复
18
发给她更好fh|  楼主 | 2022-9-29 11:09 | 只看该作者
在许可范围内,C1,C2值越低越好。应该试用电容将他的振荡频率调到IC所需要的频率,越准确越好,C值偏大虽有利于振荡器的稳定,但将会增加起振时间。

使用特权

评论回复
19
发给她更好fh|  楼主 | 2022-9-29 11:11 | 只看该作者
应使C2值大于C1值,这样可使上电时,加快晶振起振。

使用特权

评论回复
20
发给她更好fh|  楼主 | 2022-9-29 11:12 | 只看该作者
对于32KHZ以上的晶体振荡器,当VDD>4.5V时,建议C1=C2≈30PF。

使用特权

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

本版积分规则

37

主题

546

帖子

1

粉丝