STM32 怎么挑:家族系列、命名规则与最小系统板选型
- 搞清 STM32 主流系列(F1/F4/G4/H7/L/C0/G0)各自的定位,会照需求挑系列
- 看懂 STM32 的命名规则,从型号字符串读出系列/引脚数/Flash 容量/封装
- 分清蓝丸、Nucleo、Discovery 三类最小系统板,知道学习入门该买哪块
- 分清 ST-Link 与 J-Link、克隆与正版调试器的取舍
你在 ESP32-S3 上没经历过"挑芯片"这件事——乐鑫的主流就那么几颗,你 idf.py set-target esp32s3 一句就开干了。可一进 STM32 的世界,事情立刻变复杂:F1、F4、G4、H7、L4、G0……一长串系列名;开发板有蓝丸、有 Nucleo、有 Discovery;连个调试器都分 ST-Link 和 J-Link、克隆版和正版。你想学个 STM32,光"买哪块板子"就能卡半天。
这一篇不教你写代码,专门解决一个问题:面对 STM32 这一大家子,你该怎么挑。 把系列定位、命名规则、开发板、调试器这四件事理清,你就知道入门该买什么、将来做项目该选哪颗芯片。下一篇 CubeMX + HAL 点灯 才正式上手写代码——但你得先有块对的板子。
先把丑话说在前头:本篇里的具体型号、规格参数、价格档位,都会随芯片批次、市场行情和 ST 官方更新而变动。 文中给的主频、Flash、价格区间是帮你建立"档位感"的参考,真要下单前,务必用 ST 官方选型工具 ST MCU Finder 按你的需求筛,并核对该型号的 datasheet。 别拿这篇当采购清单照抄——它是教你"怎么挑",不是"挑好了给你"。
读这篇前,你不用会任何 STM32 代码,只要知道"MCU 有主频、有 Flash、有 RAM、有外设"这些基本概念就够了。这些在 ESP32 篇里你都见过。
先认 STM32 这一大家子:主流系列怎么分
ST 把 STM32 按内核和定位切成了十几个系列,字母打头(F/G/H/L/C 等)+ 数字。别被吓到,入门和大多数业余项目,你真正会碰到的就下面这几个。我按"你最可能遇到"的顺序排:
- F1——经典入门,但已经老了。 代表型号 STM32F103,就是大名鼎鼎的"蓝丸"那颗。Cortex-M0 之上的 Cortex-M3 内核,72MHz,资源不多但够学。便宜、资料铺天盖地、几乎所有教程都用它。缺点是架构老、外设功能弱、ST 已不主推——学习用没问题,新项目别再上它。
- F4——高性能主力,用得最多。 代表 STM32F407 / F411。Cortex-M4F 内核(带浮点单元 FPU),主频 84~180MHz,Flash/RAM 都宽裕,外设全。是当下业余和工业项目最常见的一档,性价比和生态都成熟,做点带算法、带浮点的活儿很顺手。
- G4——新一代,主打电机控制和数字电源。 代表 STM32G431 / G474。同样是 M4F,但 ST 在它里头塞了 CORDIC(硬件三角函数加速器)和 FMAC(硬件滤波/乘累加单元),专为电机 FOC 控制、数字电源这类高速实时数学运算优化。要做 BLDC 电机、逆变器,G4 比 F4 更对路。
- H7——高端高算力。 代表 STM32H743 / H750。Cortex-M7 内核,主频拉到 400~550MHz,RAM 大,能跑跑图形界面(带 LCD 控制器)、做信号处理。算力溢出的高端档,价格也跟着上去;入门用不上,等你做需要硬算力的项目再说。
- L 系列(L0/L4/L5)——超低功耗。 为电池供电、要待机几个月几年的设备(传感器节点、可穿戴)而生,主打的是 µA 级低功耗而非性能。你做 IoT 节点、纽扣电池供电的东西时才会专门挑它。
- C0 / G0——低成本入门,接替 F1。 STM32C0 / G0 是 ST 推的 Cortex-M0+ 低成本系列,定位就是便宜量产,用来接替老旧的 F1 打入门和成本敏感市场。新做一个"便宜够用"的小项目,G0/C0 比 F1 更值得选——更新、更省电、还在主推。
一张表把档位感建立起来(数字是档位参考,精确值以 datasheet 为准):
| 系列 | 内核 | 主频档 | 价格档 | 典型用途 |
|---|---|---|---|---|
| F1 | Cortex-M3 | ~72MHz | 低(且老) | 学习入门、海量教程、淘汰中 |
| C0 / G0 | Cortex-M0+ | 最低 | 低成本量产、接替 F1 做入门 | |
| F4 | Cortex-M4F | 84~180MHz | 中 | 业余/工业主力,带浮点、外设全 |
| G4 | Cortex-M4F | ~170MHz | 中 | 电机 FOC、数字电源(CORDIC/FMAC) |
| L0/L4/L5 | M0+/M4/M33 | 中低 | 中 | 电池供电、超低功耗节点 |
| H7 | Cortex-M7 | 400~550MHz | 高 | 高算力、图形界面、信号处理 |
**怎么挑?**老炮给你的实在话:纯学习,买块 F103(蓝丸)或者 G0 开发板就够,资料最多、坑最少;做项目要性能,直接上 F4,是当前甜点;做电机/电源,看 G4;要低功耗看 L,要硬算力看 H7。别一上来就买 H7——算力用不满,坑还更多。
看懂命名规则:从型号字符串读出一切
STM32 的型号像一串密码,但每一位都有意思。学会读它,你看到 STM32F103C8T6 就能知道它是什么。拆开来看:
STM32 F 103 C 8 T 6
│ │ │ │ │ │ └─ 温度/包装代码(常忽略)
│ │ │ │ │ └──── 封装(T=LQFP)
│ │ │ │ └─────── Flash 容量代码
│ │ │ └────────── 引脚数代码
│ │ └────────────── 具体子系列型号
│ └────────────────── 产品系列(F/G/H/L/C...)
└──────────────────────── 厂商前缀,固定 STM32
逐段拆 STM32F103C8T6:
- STM32:固定前缀,ST 的 32 位 ARM Cortex-M 单片机。
- F:产品系列。F=主流性能线,G/H/L/C 含义见上一节。
- 103:具体型号。
103是 F1 里最常见的那颗。 - C:引脚数代码。这是最实用的一位——
T=36 脚、C=48 脚、R=64 脚、V=100 脚、Z=144 脚。脚越多,可用的 GPIO 和外设接口越多。蓝丸的C就是 48 脚。 - 8:Flash 容量代码。
4=16KB、6=32KB、8=64KB、B=128KB、C=256KB……8就是 64KB Flash。 - T:封装。
T=LQFP(方形贴片,最常见)、U=QFN、H=BGA。 - 6:温度范围/包装等代码,新手基本不用管。
引脚数代码和 Flash 代码这两位最值钱——选型时你心里要有"我要多少 IO、多大 Flash"。比如 STM32F103C8(48 脚/64KB)和 STM32F103RC(64 脚/256KB),同是 F103,资源差一截。具体哪个代码对应多少,不同系列略有出入,以该型号 datasheet 第一页的型号对照表为准——别凭记忆下单。
会读这串码,你逛立创、看 datasheet、跟人聊型号时就不再发懵:STM32G474RE 你一眼能拆出"G4 系列、64 脚、512KB Flash"。
最小系统板:蓝丸、Nucleo、Discovery 该买哪块
光有芯片不能用,你得有块把芯片、晶振、电源、下载口都焊好的最小系统板。STM32 圈子里你会反复听到这三种:
蓝丸(Blue Pill,STM32F103C8T6 核心板)。 最便宜、最经典的入门板,几块钱一块,网上教程全是拿它讲的。但它有两个老炮必须提醒你的坑:
- 山寨替芯坑。 市面大量"蓝丸"用的根本不是 ST 原厂 F103,而是国产兼容芯片,最常见的是 CKS32F103(中科芯)、还有 GD32 等。它们引脚和大部分功能兼容,但不是 100% 一致——有些在 ST-Link 识别、某些外设时序、Flash 行为上会和正品对不上,照 ST 文档调试时偶尔会"莫名其妙"。买的时候看芯片丝印,认准
STM32字样;调试出怪问题时,先怀疑是不是替芯。 - 板载没有调试器。 蓝丸只有芯片本体,你还得另配一个 ST-Link 才能下载程序(见下一节)。
Nucleo(ST 官方开发板)——学习入门首推。 ST 自家出的标准开发板,价格比蓝丸贵一些但不贵,而且板载了一个 ST-Link 调试器——插上 USB 就能直接下载调试,不用另买调试器,省心。Nucleo 还做成了兼容 Arduino 接口的形状,接扩展板方便。型号覆盖各系列(Nucleo-F103、Nucleo-G431、Nucleo-H743……),你想学哪个系列就买对应的 Nucleo。老炮建议:第一块板就买 Nucleo——板载下载器这一条,就帮新手省掉了一半"连不上"的麻烦。
- 取舍:比蓝丸贵、比蓝丸大一点。但对新手来说,这点钱换"开箱即用、不用配调试器"非常值。
Discovery(ST 官方评估板)。 同样是 ST 官方板,但定位更偏"展示这颗芯片的能力"——往往板载了屏幕、传感器、音频等一堆外设,贵、大、功能多。适合评估某颗高端芯片(如 H7)的完整能力,不适合纯入门——一上来用不上那么多花活,还更贵。
一句话选板:入门买 Nucleo(板载 ST-Link 省事),想省到极致 + 不怕折腾买蓝丸(留意替芯、另配下载器),要评估高端芯片的全套能力才考虑 Discovery。
调试器:ST-Link 与 J-Link、克隆与正版
STM32 不像 ESP32 能用串口直接下载,必须靠一个调试器通过 SWD 口把程序烧进去、做单步调试。两个主角:
- ST-Link——ST 官方调试器,STM32 的标配。 最常用。如果你买的是 Nucleo,它已经板载了一个 ST-Link,不用另买。如果你用蓝丸这类核心板,就得单买一个。市面有正版 ST-Link/V2 和大量克隆版:
- 克隆 ST-Link(几块到十几块):学习、个人项目完全够用,绝大多数情况和正版没区别。偶尔遇到固件版本老、需要在 STM32CubeProgrammer 里升级固件,或个别克隆做工差导致连接不稳——属于小概率,换一个就好。
- 正版 ST-Link:稳定、固件官方支持及时,商用/产线烧录建议上正版。学习阶段克隆足矣,不必为这个多花钱。
- J-Link(SEGGER 出品)——更强更贵的第三方调试器。 下载快、对各种内核支持广、调试功能更专业,是很多商业开发的选择。但价格高,正版不便宜,而且 STM32 用 ST-Link 已经够用,新手没必要上 J-Link。等你跨多家 MCU、需要它的高级调试特性时再说。
克隆 ST-Link 最常见的坑:固件太老连不上,或被官方工具提示"需要升级固件"卡住。 解法是打开 STM32CubeProgrammer,连上调试器,在 ST-LINK 选项里点 Firmware upgrade 升一下;升级时别拔线。还有些做工差的克隆,SWD 排线接触不良会导致"时连时不连",换根线或换个克隆通常解决。这些都是小钱小事,不影响学习——但你得知道遇到了往哪查,别一连不上就怀疑自己代码写错。
实在话:学习阶段,一个十几块的克隆 ST-Link 就够你走完整个 S 卷;要么干脆买 Nucleo,板载 ST-Link 连这步都省了。
小结 · 你现在会挑 STM32 了
- 你认清了 STM32 主流系列的定位:F1(经典入门、淘汰中)、C0/G0(低成本接替 F1)、F4(业余/工业主力、带浮点)、G4(电机/数字电源、带 CORDIC/FMAC)、H7(高端高算力)、L(超低功耗)——会照需求挑系列。
- 你能读懂命名规则:
STM32 + 系列 + 子型号 + 引脚数代码 + Flash 代码 + 封装,看到STM32F103C8T6就能拆出"F1、48 脚、64KB Flash、LQFP"。 - 你分清了三类板:Nucleo(板载 ST-Link,入门首推)、蓝丸(最便宜,留意 CKS32 替芯坑、要另配下载器)、Discovery(评估高端芯片用)。
- 你知道了调试器怎么选:ST-Link 是标配,克隆版学习够用、商用上正版,J-Link 更强但新手不必。
- 最重要的一条:型号、规格、价格随批次和官方更新变动,真要下单先用 ST MCU Finder 按需筛、核对 datasheet,本篇只教你怎么挑,不当采购清单。
板子和调试器到手了,下一步就真正动手:用 ST 的图形化工具 CubeMX 配好引脚和时钟、生成 HAL 工程,在 STM32 上点亮第一个 LED——这正是从 ESP-IDF 迁移过来的第一道坎。接着看 STM32 上手:CubeMX + HAL 点亮第一个 LED。想回看整条迁移路线,去 STM32 迁移卷总览。