原创 MCU应用第006篇 引脚XIN和XOUT

2024-10-6 00:04 661 3 4 分类: MCU/ 嵌入式 文集: 1 MCU应用
[初次发表 24-10-06  最后编辑:24-11-17] 
    写在前面:
    1. 本篇将以Microchip的产品来写。我认为MCU公司里,Microchip在时钟方面的文章最多。Microchip的术语可能与其它公司不一样,但用法没区别,不影响理解。
    2. 用“时钟源”这个术语,区别于MCU内部时钟分频产生的“时钟”。

    通用型MCU允许使用外部时钟源。为了给应用MCU的人提供更多的便利,一般外部时钟源的频率范围都很宽。不过,频率只是外部时钟源器件选型和设计的三个要素之一,剩余两个要素后面会介绍。
    外部时钟源的类型
    -- 有源 (active) 时钟源:矩形波或正弦波输入,以Vss为基准。常见的是XO(晶体振荡器,或晶振)。
    -- 无源 (passive) 时钟源:一种必须被振荡电路驱动的元件,例如各种谐振器(Resonator)、XTAL(晶体,crystal)。其中,谐振器需要的功率(功耗)比XTAL大。

    引脚XIN和引脚XOUT
    X是XTAL的缩写,是Crystal的谐音;IN是input、输入的意思而OUT是output、输出的意思。
    XIN和XOUT之间实际上有一个振荡电路,叫做 Pierce 并联谐振振荡电路,原理图如下。图中有一个反相器,输出通过反馈电阻RF接回到输入,由此形成一个不稳定的电路。外接晶体和谐振电容后,这个电路会在单位增益上达到稳定,以单位增益对应的频率振荡。图中上部矩形框内的部分都是在MCU的芯片上实现的。
    
    (图来自Ref 1)
    XIN引脚总是要连接的,而XOUT引脚只在使用无源时钟源的情况下才用到。使用有源(active)时钟源的情况下,例如XO,外部信号发生器输出等,信号源的参考点是MCU的Vss。这时不需要MCU内的振荡器辅助,所以只需要接XIN一个引脚,XOUT引脚可悬空或复用其它功能。使用无源(passive)时钟源的时候,例如晶体和谐振器,其自身不能产生振荡信号,需要借助MCU内置振荡电路。这时,除了XIN引脚,必须用到XOUT引脚。

    下面讨论XIN和XOUT两个引脚都被使用的情况,有几个应用要点值得关注。
    1. 选择振荡电路驱动模式
    应该根据时钟源的功率需求来选择适当的驱动模式。前面提到,无源外部时钟源中,和晶体相比,谐振器需要更高的驱动功率。对于晶体,和低频晶体(例如音叉结构的32.768kHz晶体)比,AT-Cut的晶体需要更高的驱动功率。为此,通用MCU除了内置振荡电路,还为振荡电路设计了不同的驱动功率,例如LS模式,XT模式和HS模式,功率就是递增的。
    除了考虑时钟源的功率需求,还要关注振荡电路的电源电压,常常是MCU的电源电压。如果振荡电路的电压不足,那么其输出功率也会下降(电流增加受到芯片布线的限制)。例如,一个MCU的电源范围是1.8~5.0V,但是振荡电路的XT模式只能在3.0~5.0V有效。这时如果外接电源跌落到3.0V以下,那么外部时钟源就可能停振。而且,这样的电路在3.0V以上使用是正常的,但是转换为低功耗的1.8/2.5V时,就可能不工作。
    2. 不要过度驱动
    上面讨论了驱动功率不足导致的停振,接下来是因为驱动过度导致的晶体疲劳甚至破裂。
    如基础理论第006篇所述,充当时钟源的晶体是以压电效应工作的。 如果驱动电路给出的电压过高,那么晶体的振幅就会过大,从而缩短其使用寿命,甚至立即被破坏,形成寿命可靠性风险。
    3. 检查时钟信号
    怎样知道MCU的外部时钟源是不是“合适”?这就要提到正确的测量方法。
    建议使用高输入阻抗的示波器探头(100:1)来测量XOUT的信号。该信号应该是低失真的正弦波。用普通的电压探头检查时,有可能因为探头本身的电容而改变振荡电路的特性,造成停振。
    -- 如果发现波形被截顶或者畸变率高,那么就应该马上降低振荡电路的驱动功率,比如从HS降到XT。
    -- 如果降到XT还是不能彻底解决问题,那么需要在晶体上串联一个电阻来消耗多余的功率。见上图的R1。
    -- 如果振荡信号并没有工作在需要的频点上而是其某个倍频或者分频,也说明驱动功率不合适,需要立即调整。
    最后,这样的检查应该在开发的各个阶段进行,不管是最初的功能样机还是过程样机,都是一样。如果修改了PCB设计,更换了晶体,更是需要检查。

    下面简述一下PCB布线的注意事项。
     外部时钟源和MCU之间形成的是一个振荡电路,这对于微弱信号调理以及EMC来说都是不利的。为此,应参照高频电路对待,做好PCB布线。
    首先,电路回路小。外部时钟源,例如晶体,距离XIN/XOUT引脚不要超过15mm,最好是10~12mm。这个距离不至于有DFA问题。晶体和电容、电阻都优先选用小外形的产品;
    其次,电场屏蔽。在PCB上用接地(或其它固定电位)导体把这个振荡电路围起来,形成Guard Ring(屏蔽环),然后屏蔽环一点接地。金属外壳的晶体,可以把金属壳用一根导线焊在PCB的地上,也有电场屏蔽的作用。引脚数较多的通用MCU,一般会在XIN/XOUT旁边安排一个Vss引脚,这个引脚是屏蔽环一点接地的最佳位置。引脚数较少的MCU可能没有这个脚,那么可以选择接在模拟地-数字地单点连接的位置;
    最后,避免耦合。在振荡电路的区域不要排布其它的线路。对于双面和多层PCB,可以考虑振荡电路下方铜皮开窗;
    下面是布线示例:
    
    (图来自Ref2,单面板双晶体的做法)
    
    (图来自Ref2,双面板单个晶体的做法)

扩展阅读
Ref
    1. DS00838A. Basic PIC16/17 Oscillator Design. Mircochip
    3. DS00949A. Making Your Oscillator Work. Microchip

作者: 电子知识打边炉, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-4061550.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

电子知识打边炉 2024-10-19 13:38

luckyzy2000: 是不是先过电容再到晶体引脚会更好呢?这样可以减少stub
我没实验对比过,只是定性说看法。我认为晶体靠近引脚比较好,晶体是谐振源,MCU内置振荡电路,振荡电路的回路面积越小,电磁能量辐射越少,另外晶体到引脚的PCB导线短,寄生电容也变小。
当然,这样小的变化,对于10MHz以下的常用晶体来说看不太出来。为了改善EMC,越来越多的中高档MCU都内置锁相环,外接晶体的频率常常8MHz就够了。

stub是指这部分电路突出的部分吗?

luckyzy2000 2024-10-18 15:40

是不是先过电容再到晶体引脚会更好呢?这样可以减少stub
相关推荐阅读
电子知识打边炉 2025-01-22 11:12
PCB设计第058篇 如何打开IPC-2581格式的PCB加工文件
    IPC-2581是基于ODB++标准、结合PCB行业特点而指定的PCB加工文件规范。    IPC-2581旨在替代CAM350格式,成为PCB加工行业...
电子知识打边炉 2025-01-04 20:04
MCU应用第008篇 Eclipse环境下MCU寄存器描述文件的存储位置
    为控制片内设备并且查询其工作状态,MCU内部总是有一组特殊功能寄存器(SFR,Special Function Register)。    使用Ecli...
电子知识打边炉 2024-10-29 22:22
MCU应用第007篇 C程序对中断服务程序的标记
    C程序要借助一些指示性的“黑话”,才能使C编译器知道该如何处理。例:南京沁恒RV32编译器    void Example_IRQHandler(voi...
电子知识打边炉 2024-10-19 18:23
元器件第049篇 晶体谐振器 (XTAL) 结构 分类
    前一篇介绍了晶体振荡器(Crystal Oscillator, XO),这一篇介绍石英晶体谐振器(Quartz Crystal Resonator),简称 Quartz 或...
电子知识打边炉 2024-10-17 22:57
元器件第048篇 晶体振荡器 (XO) 结构 分类
[初次发表 24-10-17  最后编辑:24-10-19]    石英晶体谐振器(Quartz Crystal Resonator, XTAL )可以被用作高精度时钟源...
电子知识打边炉 2024-10-16 22:42
元器件选型第006篇 电容器 耐ESD的MLCC
    电容器通常是ESD不敏感的元件,但是有一个例外——E0402及以下封装的MLCC(多层陶瓷电容器)是ESD敏感元件。这是因为其精细结构降低了小型MLCC的抗ESD能力。&n...
我要评论
2
3
关闭 站长推荐上一条 /3 下一条