晶振选型

参数看什么

频率。 不是越准越好,是必须凑得出 PLL。N32G435 官方库按 8MHz 写死(HSE_VALUE=8000000),例程全按 8M 配置,自作主张换 12MHz 就得改库,还偏离所有例程。买之前先算倍频链。

常温频差(±ppm@25℃)。 出厂校准误差。±10ppm 是十万分之一,±20ppm 是万分之二。16kHz 载波差零点几 Hz,UART 波特率差 0.001%,对这个板子都没区别。别为 ppm 档位加钱。

频率稳定度(全温 ±ppm)。 温漂。商品页标的 ±10ppm 是 25℃ 的数,全温会放宽到 ±20ppm,买之前两个数都看清。台架恒温看不出差别,电机一跑板子热了才显形。

负载电容 CL。 这个最阴。晶振出厂按 CL 校准,外挂电容不对,后果不是不起振,是频率悄悄偏几十ppm,精度白选。公式:

Cstray 按 3~5pF 估。所以晶振和电容要当一个套件买,换晶振型号就得重算电容。

晶振 CL外挂 C1=C2(C0G)
8pF10pF
12pF18pF
20pF33pF

[! 我去,这么难读?] C0G / NP0(Class I,顺电介质) 编码是“温度系数 + 系数公差”:C0 = 系数 0,G = ±30ppm/℃。也就是说温度从 −55 变到 +125℃,容量基本不动。NP0 是老叫法(negative-positive-zero,正负都不偏 = 零),和 C0G 是同一个东西。

ESR。 六个参数里唯一”超标直接罢工”的。振荡器靠负阻喂晶振,负阻得有 ESR 的 35 倍才起得来。8MHz 档 ESR 常见 40180Ω 都行,超 200 就要翻 MCU 手册对裕量。太大表现为起振慢、低温不起。

温度范围和激励功率。 温区照使用环境选,台架 −40~85℃ 随便挑。激励功率是晶振吃多少驱动,超了老化快;正常厂家的料不会越界,知道有这回事就行。

其他:老化率(±ppm/年)量产才用得着;封装只管焊接方式,手焊直插 HC-49S、贴片厂 3225;有源振荡器贵 5~10 倍,这个场景用不上。

查料页顺序

频率配 PLL → ESR ≤200Ω(8MHz 档)→ 温区覆盖环境 → ppm 档位随缘 → CL 反算电容成套下单 → 最后看价格库存。

本板结论:8MHz,扬兴 X32258MSB4SI

定的是扬兴晶振 X32258MSB4SI,立创编号 C2682774。3225-4P,常温 ±10ppm / 全温 ±20ppm,CL 20pF,ESR 180Ω,−40~85℃,单颗一块二以内,库存八千五。配 2× 33pF C0G 0402(= 2×(20−4))。

为什么是 8MHz:官方库 HSE_VALUE 就是 8000000(n32g43x.h:63),108MHz 配置在 system_n32g43x.c:169-175 自动走 (HSE/2)×27 = 4×27 = 108 的整数倍频分支,PLL 输入 4MHz 落在规格 4~32MHz 里(数据手册表 4-21)。换 12MHz 也能 ×9 凑出 108,但要改 HSE_VALUE,不值。

引脚和布局

HSE 在 PD14(OSC_IN) / PD15(OSC_OUT)。晶振离 MCU 5mm 以内,电容地就近回流,底下不走线。贴完板用示波器看一眼振幅和起振时间。 这片子带时钟安全系统(CSS),HSE 挂了自动切 MSI,FOC 跑起来之后软件里把它开上。

LSE 32.768kHz 只有用 RTC 才需要,最小系统板留个焊盘就行,不贴料。