STM32的内部RC与外部晶振电路

内部RC是"能用",外部晶振是"用得准"

一、STM32芯片内部的"晶振电路"是什么?

STM32内部确实集成了两个RC(电阻-电容)振荡器

  1. HSI(高速内部振荡器):通常8MHz,精度约±1%(全温度范围可能达±5%)
  2. LSI(低速内部振荡器):约40kHz,精度仅±5%以上

它们不是真正的"晶振电路",而是通过半导体工艺制造的模拟电路,其精度和稳定性受温度、电压、工艺偏差影响较大。


二、为什么需要外接晶振?

1. 精度需求(核心原因)
  • 主系统时钟(HSE):外部高速晶振(4-26MHz)精度可达±10~50ppm(百万分之十到五十)
  • 对比:内部HSI误差可能达5000ppm(0.5%)!
  • 影响
    • 通信接口(USART, SPI, I2C):波特率偏差导致通信失败
    • 定时器:时间计量严重不准
    • USB:必须用48MHz±0.25%的高精度时钟
2. 稳定性需求
  • 外部晶振的频率-温度曲线更平缓(如±10ppm/-40°C~85°C)
  • 内部RC振荡器会随温度漂移(可能漂移几百ppm)
3. 时钟树灵活性

外接晶振可解锁全部性能:例如用8MHz晶振通过PLL倍频到72MHz(STM32F1最大值)


三、为什么RTC需要独立的外部32.768kHz晶振?

1. 超低功耗需求
  • RTC在待机模式下仍需工作
  • 外部32.768kHz晶振功耗仅约1μA
  • 内部LSI功耗高数十倍且精度不足
2. 时间精度保障
  • 32.768kHz晶振误差可控制在±20ppm(约每月52秒误差)
  • 内部LSI误差±5% ≈ 每月偏差数小时!
  • 数学原理:32768 = 2¹⁵,分频15次后恰好得到1Hz(1秒)信号
3. 独立供电设计
  • 部分型号支持VBAT引脚单独供电
  • 外部晶振+VBAT可使RTC在主电源断电时继续计时(配合纽扣电池)

四、实战设计建议

  1. 最小系统必备

  2. PCB布局要点

    • 晶振尽量靠近芯片引脚
    • 用地线包围晶振电路
    • 负载电容C1、C2按晶振规格书选择(通常12-22pF)
  3. 替代方案

    • 无高精度需求时可用内部时钟
    • 可外接有源晶振(适用恶劣环境)
    • 某些型号支持时钟校准(如STM32F4的时钟校准单元)

总结关键区别

特性 内部RC振荡器 外部晶振
精度 ±1%~5% ±10~100ppm
温度稳定性 差(数百ppm/°C) 优(±0.035ppm/°C)
功耗 较低 极低(RTC专用)
启动时间 快(μs级) 慢(ms级)
成本 免费(片内集成) 需外购元件
相关推荐
学不动CV了6 小时前
C语言32个关键字
c语言·开发语言·arm开发·单片机·算法
姜暮儿7 小时前
U盘直接拔出不在电脑上弹出有何影响
stm32·单片机·嵌入式硬件
O。o.尊都假都8 小时前
STM32之LVGL移植
stm32·单片机·嵌入式硬件·freertos·lvgl
学不动CV了8 小时前
ARM单片机OTA解析(一)
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机
一叶舞澎湃9 小时前
GD32 CAN1和TIMER0同时开启问题
单片机·嵌入式硬件
EutoCool9 小时前
Qt窗口:菜单栏
开发语言·c++·嵌入式硬件·qt·前端框架
易知嵌入式小菜鸡11 小时前
CCS-MSPM0G3507-3-基础篇-PWM输出
stm32·单片机·嵌入式硬件
悟空胆好小14 小时前
分音塔科技(BABEL Technology) 的公司背景、股权构成、产品类型及技术能力的全方位解读
网络·人工智能·科技·嵌入式硬件
Meraki.Zhang15 小时前
【STM32实践篇】:最小系统组成
stm32·单片机·嵌入式硬件·最小系统
Do vis82416 小时前
STM32第二十一天定时器TIM
stm32·单片机·嵌入式硬件