时钟对于MCU而言,就像心脏对于人体一样重要。没有稳定的时钟,再强大的MCU也无法正常工作。而在实际设计中,晶振作为时钟源的核心器件,分为无源晶振和有源晶振两类。很多工程师在选型时常常纠结:这两者到底有什么区别?和MCU怎么搭才最合适?
这篇文章从实际应用出发,聊聊两类晶振与MCU的关联逻辑,希望能帮大家在选型时少走弯路。
无源晶振,技术上也叫石英晶体谐振器。它本身是个被动器件,内部没有振荡电路,需要借助MCU内部的振荡器才能起振工作。说白了,它只负责提供谐振频率,真正让它“动起来”的是MCU。
硬件怎么接?
无源晶振一般就两个引脚,没有方向,直接连到MCU的OSC_IN和OSC_OUT两个时钟引脚上。外围需要配两颗负载电容,电容值得和晶振的负载参数匹配,否则可能出现起振困难或者频率偏移的问题。
有什么特点?
成本低,这是它最大的优势
功耗小,对电池供电的设备很友好
频率覆盖中低频,常见的8MHz、12MHz、16MHz用于系统时钟,32.768kHz用于RTC实时时钟
适合用在哪?
大多数通用MCU,比如STM32、GD32、ESP32这些,配上无源晶振就能跑得很好。像小家电、传感器节点、简单的控制板这些成本敏感的项目,用无源晶振是最务实的选择。
需要注意什么?
PCB布线时,OSC_IN和OSC_OUT这两条线尽量短,远离干扰源,最好别跨层走线。负载电容一定要按晶振规格书来配,别凭感觉。
有源晶振,技术上叫石英晶体振荡器。它把石英晶体和振荡电路、放大电路都封装在一起了,通电就能输出稳定的时钟波形,不需要MCU内部的振荡器来帮忙。
硬件怎么接?
有源晶振一般是4个引脚:电源、地、输出、还有使能脚(有些型号没有使能)。用起来很简单:供上电,把输出脚直接连到MCU的外部时钟输入引脚就行。MCU这边的配置也要相应改成外部时钟输入模式。
有什么特点?
信号干净,抗干扰能力强
上电就稳定,不存在起振失败的问题
支持高频输出,几十兆到上百兆都能做
精度高,温度稳定性好
适合用在哪?
工业控制、汽车电子、医疗设备这些对可靠性要求高的场合,有源晶振是首选。还有高速MCU(主频100MHz以上)、射频模块(WiFi、蓝牙、LoRa)、需要精准通信同步的系统,用有源晶振更放心。
需要注意什么?
电源要稳,最好加个滤波电容。输出引脚直接接MCU时钟输入,不用再接其他东西。
实际项目中,选哪种没有绝对的对错,关键看应用场景。这里总结了几条经验:
| 场景 | 推荐 |
|---|---|
| 成本敏感、大批量 | 无源晶振 |
| 功耗要求严格 | 无源晶振 |
| 工作环境恶劣(户外、工厂、车载) | 有源晶振 |
| MCU主频高(≥100MHz) | 有源晶振 |
| 有无线通信、需要精准同步 | 有源晶振 |
| 要求快速上市、不想在时钟上花太多调试时间 | 有源晶振 |
1. MCU的配置要搞对
用无源晶振时,MCU要配置成内部振荡器模式;用有源晶振时,要配置成外部时钟输入模式。这个在软件初始化的时候别搞反了。
2. 无源晶振的负载电容不能马虎
很多批量生产遇到的问题,比如部分板子不起振、低温下启动失败,往往就是负载电容没配好。电容值偏大或偏小都会影响起振裕量,最好按晶振规格书推荐值来,必要时可以留个调试位方便调整。
无源晶振和有源晶振,说到底都是给MCU提供时钟的元件,只是工作方式和适用场景不同。无源晶振成本低、功耗小,适合通用场景;有源晶振独立工作、稳定性好,适合高可靠、高频应用。
选对了,系统运行稳;选错了,可能会带来各种隐性问题,排查起来还很费劲。
我们在晶振这块做了很多年,从普通无源到高精度有源、温补晶振都有覆盖。如果您正在选型拿不准,欢迎随时交流,我们可以帮您看看具体方案怎么配最合适。
雅晶鑫官方微信号