0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32的RTC晶振不起振的可能原因?

jf_60870435 来源:jf_60870435 作者:jf_60870435 2023-08-23 16:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

大家好,我是EE小ai。看到一篇10年前的关于STM32晶振的文章,与大家共享。
STM32的RTC晶振经常出现不起振的问题,这已经是“业界共识”了。。。很多人在各种电子论坛上求助类似于“求高手指点!RTC晶振不起振怎么办”的问题,而其答案基本可以概括为“这次高手帮不了你了”

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

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

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

各种相互矛盾的经验也告诉我们,导致晶振不起振的原因是多种多样的,也是因“人”而异的。也许,我们无法找到一个绝对有效的经验一举解决STM32的RTC晶振这个让人头疼的问题,但我们可以从各种经验中找到一些线索,为最终摸索到适合自己这块板子的解决方案提供一些帮助和提示。

如果晶振不起振,尤其是你已经使用了传说中的爱普生6pF晶振后还是不行,也许你应该尝试对以下几个方面排列组合,找到适合你这块板子的,更容易起振的方式。

下面就罗列一下可能影响RTC晶振起振的因素:

1. 晶振的品牌和负载电容

大家貌似都知道要用6pF的晶振,但我发现其实12.5pF的也可以用。大家都说KDS日本原装的好,我那个3毛钱的国产晶振貌似也没啥大问题。。。

2. 晶振外接的匹配电容

有人说6pF的晶振要配6pF的电容。但有经验公式指出这个电容的值应该是晶振本身负载电容的两倍,6pF的晶振应该配10pF的匹配电容,当然12.5pF的就应该配20pF或者22pF的电容了~电容值不匹配可能造成晶振不起振。更神奇的是,有人指出去掉外接的匹配电容会使晶振起振!这似乎没啥道理,但在我的板子上,有且仅有这个方案是可行的!!!

3. 晶振并联的反馈电阻

晶振可以并联一个高阻值的电阻,据说这样更容易起振。。。这个电阻的阻值有人说是1MΩ,有人说是5MΩ,也有人说是10MΩ,,,当然也有人说不能并联这个电阻,并联了反而不起振

4. XTALout到晶振间串联电阻

这种做法是官方的应用笔记指出的,而且给出了这个电阻的计算公式。对这个电阻的的必要性也是众说纷纭,同样存在两种矛盾的说法,即必须要有这电阻,否则不起振。还有一说不能有这个电阻,否则不起振。。。从官方的应用笔记来看,这个电阻的主要作用是保护晶振,以防晶振发热。由此看来这个这个电阻似乎并非影响晶振起振的主要因素,甚至可能让晶振更难起振。

5. 晶振的外壳是否接地

这个就不用说了吧。。。晶振的外壳是金属的,做封装时可以把那个焊盘做成机械焊盘而悬空,也可以做成电气焊盘,然后连接到GND。对这个说法同样存在争议,有人说外壳必须接地,也有人说接地后反而不起振。

6. 提高Vbat引脚的电源质量

这种说法是有一定道理的,因为RTC部分是由Vbat的来供电的。有人说Vbat引脚对电源质量要求比较高,如果纹波较大可能会影响晶振的起振。更有人说反而需要一些噪声,激励晶振产生正反馈从而顺利起振(本人对此表示呵呵)。。。但不管怎样,提高电源质量对大家都是好事~

7. 晶振周围的环境

有人指出应该仔细清洗RTC晶振周围的电路,甚至是使用环氧树脂胶将晶振密封起来。这种说法得到了一些人的支持,看来也是有相当多的事实依据。

8. 减少晶振焊接时加热的时间

有人认为长时间加热晶振进行焊接会对晶振本身带来影响,却不是彻底损坏晶振,从而使得晶振不容易起振。。。这种说法我没验证过,个人表示怀疑。。。

9. 焊接的焊锡量

这个种说法感觉就更不靠谱了,但真的有人在晶振引脚上多加了点焊锡晶振就能起振了。从原理上说,多加点焊锡确实会改变晶振和PCB间的寄生参数,但我感觉影响微乎其微。。。可能晶振已经徘徊在临界值的边缘了,这种做法才会起到一点作用。

10. 使用有源晶振

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

【以上信息由艾博检测整理发布,如有出入请及时指正,如有引用请注明出处,欢迎一起讨论,我们一直在关注其发展!专注:CCC/SRRC/CTA/运营商入库】

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 晶振
    +关注

    关注

    35

    文章

    3637

    浏览量

    73818
  • STM32
    +关注

    关注

    2313

    文章

    11195

    浏览量

    374661
  • RTC
    RTC
    +关注

    关注

    2

    文章

    666

    浏览量

    72232
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    别乱换!5个常见原因+排查步骤,一次修好

    是硬件研发、打样量产最头疼的通病,轻则程序跑飞、时钟不准,重则整机启动、批量返工。工
    的头像 发表于 03-03 11:26 734次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>别乱换!5个常见<b class='flag-5'>原因</b>+排查步骤,一次修好

    的系统性解析

    振作为电子系统的核心时钟源,其稳定直接关系到设备功能实现。当无法正常启动时,系统将陷入时序混乱,导致数据传输错误、控制失灵等严重后
    的头像 发表于 02-13 10:11 278次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>的系统性解析

    如何避免?(附检查清单)

    是电路的心脏,它不,整个系统就无法工作
    的头像 发表于 01-29 10:36 224次阅读
    如何避免<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>?(附检查清单)

    常见的石英失效原因有哪些?

    不适配选型环节的参数匹配度直接决定能否稳定工作,常见失效原因集中在核心电气参数与设计需求契合。▶电路匹配:电路中的匹配电容、反馈电阻
    的头像 发表于 01-12 17:18 372次阅读
    常见的石英<b class='flag-5'>晶</b><b class='flag-5'>振</b>失效<b class='flag-5'>原因</b>有哪些?

    晶体的解决办法

    ,性能可能受到多方面影响,应尝试更换不同批次或品牌的,排除自身问题; 4、电容调整 若电容容值或品质不佳,
    发表于 11-26 06:28

    STM32的那些小关系

    STM32 适配,以及解剖图
    的头像 发表于 11-21 15:37 5417次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b>与<b class='flag-5'>STM32</b>的那些小关系

    使用中常见问题与解决方法

    。二、工作不稳定或造成的使用异常异常现象:开机工作,工作不稳定根本
    的头像 发表于 11-21 15:37 4267次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b>使用中常见问题与解决方法

    32.768kHz原因与解决

    PCB板布线错误;单片机质量有问题;质量有问题;负载电容或匹配电容与匹配或者电容质量有问题;PCB板受潮,导致阻抗失配而不能
    的头像 发表于 11-21 15:37 6906次阅读
    32.768kHz<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>的<b class='flag-5'>原因</b>与解决

    原因

     在单片机中的重要性不言而喻,但是,作为单片机中记录工作频率的软件,它又是非常脆弱的。轻微的触碰都可能导致其功能失常。因此,单片机
    的头像 发表于 11-21 15:37 3653次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>的<b class='flag-5'>原因</b>

    无源原因有哪些?

    一般情况下,原因归纳如下:一、晶片断裂分析:晶片的化学成分为二氧化硅,与玻璃相同,属
    的头像 发表于 11-21 15:37 6889次阅读
    无源<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>的<b class='flag-5'>原因</b>有哪些?

    为何并联一个1MΩ电阻?低温如何解决

    在无源应用方案中,两个外接电容能够微调产生的时钟频率。而并联1MΩ电阻可以帮助振起
    的头像 发表于 11-21 15:37 3423次阅读
    为何<b class='flag-5'>晶</b><b class='flag-5'>振</b>并联一个1MΩ电阻?<b class='flag-5'>晶</b><b class='flag-5'>振</b>低温<b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>如何解决

    怎么办

    作为专业的制造商,YXC小扬为您带来一套系统、精准、高效的“三步定位法”——遵循由表及里、由易到难的逻辑,助您快速缩小排查范围,精准定位故障方向!
    的头像 发表于 10-27 16:18 1653次阅读
    <b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>怎么办

    有源原因深度分析与排查方案

      有源(AXO)是设备时钟信号核心,会导致设备死机、功能失效。以下从 4 大维度总结关键原因
    的头像 发表于 10-23 17:58 2.9w次阅读
    有源<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b>的<b class='flag-5'>原因</b>深度分析与排查方案

    几种失效,原因分享

    一般情况下,原因归纳如下: 1、晶片断裂 分析:晶片的化学成分为二氧化硅,与玻璃相同
    的头像 发表于 07-14 07:39 5.4w次阅读
    几种<b class='flag-5'>晶</b><b class='flag-5'>振</b>失效,<b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b><b class='flag-5'>原因</b>分享

    振荡电路原因分析

    电路本质上是一个交流振荡电路。当时,两端会静止在一个中间电位,通常接近电源电压的一
    的头像 发表于 05-19 17:45 1195次阅读
    振荡电路<b class='flag-5'>不</b><b class='flag-5'>起</b><b class='flag-5'>振</b><b class='flag-5'>原因</b>分析