STM32WL3: субгигагерцовое радио на Cortex-M0+ 64 МГц
STM32WL3 — однокристальные системы STM32 с субгигагерцовым радио: ядро Cortex-M0+ с частотой до 64 МГц и приёмопередатчик для диапазонов вроде 433, 868 и 915 МГц с мощностью до +20 дБм. Здесь — чем различаются STM32WL30, WL31, WL33 и WL3R по даташитам и reference manual RM0511, исполнения только с передатчиком, загрузка и страницы с распиновкой каждого микроконтроллера в каждом корпусе.
STM32WL3 — семейство микроконтроллеров STMicroelectronics с приёмопередатчиком субгигагерцового диапазона: одно ядро Arm Cortex-M0+ с частотой до 64 МГц, флеш-память до 256 КБ и ОЗУ до 32 КБ (DS14221, разд. 2). Радио рассчитано на нелицензируемые диапазоны ISM и SRD, такие как 433, 868 и 915 МГц. С STM32WL у него общая приставка в названии, но не устройство: у WLE5 одно ядро Cortex-M4, у WL55 — Cortex-M4 и Cortex-M0+, оба на 48 МГц, и есть модуляция LoRa, а в перечне модуляций STM32WL3 LoRa нет. В разделе 14 страниц для 14 исполнений в 2 корпусах, 4 линейки: у каждого сочетания микроконтроллера и корпуса — своя страница со схемой выводов и номерами альтернативных функций.
Линейки STM32WL3
Значения в таблице собраны из записей базы ST: память — от наименьшего до наибольшего исполнения. Частота в записях не указана; по даташитам всех четырёх линеек ядро работает до 64 МГц. База ST называет линейки по последней цифре — STM32WLx0, WLx1 и WLx3 (это WL30, WL31 и WL33, а не семейство STM32WL) — и отдельно STM32WL3R.
| Линейка | Ядро, частота | Флеш-память | ОЗУ | Корпуса | Чем выделяется |
|---|---|---|---|---|---|
| STM32WL3R | Cortex-M0+ | 64 КБ – 128 КБ | 8 КБ – 16 КБ | VFQFPN32 | I²S, AES, RNG, LPUART |
| STM32WLx0 | Cortex-M0+ | 64 КБ – 128 КБ | 8 КБ – 16 КБ | VFQFPN32 | AES, RNG, LPUART |
| STM32WLx1 | Cortex-M0+ | 64 КБ – 128 КБ | 8 КБ – 16 КБ | VFQFPN32, VFQFPN48 | AES, RNG, LPUART |
| STM32WLx3 | Cortex-M0+ | 64 КБ – 256 КБ | 16 КБ – 32 КБ | VFQFPN32, VFQFPN48 | DAC, COMP, I²S, AES, RNG, LPUART |
Назначение линеек ST указывает в таблицах заказных номеров: WL30 — линейка модема (Modem line), WL31 — линейка IoT, WL33 — полный набор функций, WL3R — линейка пультов дистанционного управления (Remote control line) (DS14855, табл. 56; DS14836, табл. 61; DS14221, табл. 74; DS15018, табл. 64). По даташитам:
| Линейка | Флеш-память / ОЗУ | Корпуса | Диапазоны, МГц | Что выделяет |
|---|---|---|---|---|
| STM32WL30 | 64/8 или 128/16 КБ | VFQFPN32 | 413–479, 826–958 | минимальный набор: USART, LPUART, SPI, AES-128 и генератор случайных чисел |
| STM32WL31 | 64/8 или 128/16 КБ | VFQFPN32, VFQFPN48 | 413–479, 826–958 | добавлены 12-битный АЦП и I²C, в корпусе VFQFPN48 — второй SPI |
| STM32WL33 | 64/16, 128/32 или 256/32 КБ | VFQFPN32, VFQFPN48 | 413–479 и 826–958 или, с буквой A, 159–185 и 398–464 | ЖКИ, компаратор, ЦАП, контроллер LC-датчика, приёмник пробуждения LPAWUR |
| STM32WL3R | 64/8 или 128/16 КБ | VFQFPN32 | 276–319, 413–479, 826–958 | АЦП, I²C, режим UltraDeepstop, свой reference manual RM0551 |
Источники строк — с. 1–2 и таблицы заказных номеров DS14855, DS14836, DS14221 и DS15018. В таблицах заказных номеров DS14855, DS14836 и DS15018 верхний диапазон записан как 868–958 МГц, а на первой странице тех же даташитов — 826–958 МГц; кроме того, в DS14836 (табл. 61) для WL31 есть вариант с буквой A — 159–185 МГц, которого нет на первой странице и в базе ST. В таблице выше — значения с первой страницы. У WL33 в корпусе VFQFPN32, как и у WL31, один SPI и один I²C (по данным ST). АЦП, I²C1, SPI1 и I²S у WL30 нет: по RM0511 они есть только у WL31 и WL33 (с. 49, примечание 2).
В базе ST есть и записи STM32WL4x, но на st.com нет ни их даташита, ни страниц продукта (проверено 20 октября 2026 года), поэтому на сайте они не публикуются.
Радио: диапазоны, модуляции, мощность
Приёмопередатчик (в документации ST — MRSUBG) работает с модуляциями 2(G)FSK, 2(G)MSK, 4(G)FSK, OOK, ASK, D-BPSK и с расширением спектра DSSS. Скорость в эфире — от 0,1 до 600 кбит/с: до 300 кбит/с при 2-GFSK и до 600 кбит/с при 4-GFSK (DS14221, с. 1 и раздел о радио). По описанию ST радио совместимо с собственными и стандартными протоколами W-MBUS, Sigfox, Mioty, KNX-RF и IEEE 802.15.4g и рассчитано на нормы ETSI EN 300 220 (категория 1), FCC часть 15 и часть 90, ARIB STD T67 и T108. Аппаратный автомат радио сам выполняет прослушивание эфира (Sniff), перескок частоты, работу с малым коэффициентом заполнения и проверку занятости канала перед передачей (DS14836, с. 1). Генератор HSE на кристалле рассчитан на кварц 48 МГц (DS14221, с. 2).
Мощность передатчика зависит от выбранного выхода (DS14221, раздел о радио; так же в DS14855 и DS14836):
| Режим передатчика | Мощность | Ток радиочасти |
|---|---|---|
| TX | до +10 дБм | 8 мА при +10 дБм |
| TXHP | до +16 дБм | — |
| TX + TXHP | до +20 дБм | 78 мА при +20 дБм |
Ток приёма — 4 мА. Чувствительность при вероятности ошибки 1 %: −132 дБм на 300 бит/с с OOK на 433 МГц, −128 дБм на 300 бит/с и −112 дБм на 38,4 кбит/с с 2(G)FSK на 868 МГц (DS14221, с. 1–2). У STM32WL3R на первой странице даташита для диапазона 276–319 МГц указано до 14 дБм, для двух других — до 20 дБм (DS15018, с. 1), а в таблице характеристик передатчика максимум для 276–319 МГц — 16 дБм (DS15018, табл. 39). В данных ST выходы передатчика называются TX и TX_HP, вход приёмника — RX.
У STM32WL33 есть LPAWUR — отдельный приёмник пробуждения с модуляцией OOK: чувствительность −54 дБм при токе 4 мкА в постоянно включённом режиме (DS14221, с. 1). Он позволяет держать основной приёмник выключенным, пока не придёт сигнал пробуждения.
Питание, режимы сна и такты ожидания
Все четыре линейки питаются от 1,7 до 3,6 В и работают при температуре от −40 до +105 °C (с. 2 даташитов DS14855, DS14836 и DS14221; DS15018, с. 3); встроенный понижающий преобразователь SMPS снижает средний ток (DS14221, разд. 2). Типовые токи этих линеек — 21 мкА/МГц в работе, 960 нА в режиме Deepstop и 14 нА в Shutdown (с. 1–2 даташитов). У STM32WL3R в работе 14 мкА/МГц, а в режиме UltraDeepstop с сохранением 16 КБ ОЗУ — 418 нА при +25 °C; радио, LPUART, RTC и IWDG в этом режиме не работают (DS15018, с. 2). Время работы от батареи при известных токах считает калькулятор времени работы от батареи.
Флеш-памяти STM32WL30, WL31 и WL33 на 64 МГц нужен один такт ожидания — поле WAIT_STATES регистра конфигурации контроллера флеш-памяти (RM0511, 9.3.2).
Исполнения только с передатчиком
Буква X в конце заказного номера STM32WL33 означает исполнение только с передатчиком (TX only version, DS14221, табл. 74), у STM32WL3R — Transmitter only (DS15018, табл. 64). По RM0511 у STM32WL33xx-X работает только передающая часть радио MRSUBG, во всём остальном это обычный WL33 (RM0511, с. 1).
В базе ST у записей STM32WL33 и WL3R с буквой X нет вывода RX — 15-го в корпусе VFQFPN32 и 23-го в VFQFPN48. Корпус с пропущенным выводом атлас нарисовать не может, поэтому страниц у исполнений X пока нет, и в сравнении выводов они не участвуют: набор выводов у них не совпадает ни с одной опубликованной записью.
Выводы STM32WL3: альтернативные функции и загрузка
У STM32WL30, WL31 и WL33 мультиплексор каждой линии порта рассчитан на семь функций: номер AF0–AF6 записывают в регистры GPIOx_AFRL и GPIOx_AFRH (RM0511, 7.3.2); после сброса большинство линий — входы с подтяжкой к питанию, кроме выводов отладки SWD: PA2 (SWDIO) и PA3 (SWCLK) (RM0511, 7.3.1). Для STM32WL3R есть свой reference manual RM0551, его мы не читали. В данных ST у WL33 встречаются номера до AF6, у WL30, WL31 и WL3R — до AF4. Радиовыводы TX, TX_HP и RX, питание радиочасти VDDRF и выводы SMPS (VDDSD, VLXSD, VSSSD, VFBSD) альтернативных функций не имеют. Вход приёмника пробуждения RX_LPAWUR есть только у WL33 (RM0511, с. 49, примечание 1); у WL30 и WL31 на его месте — 14-й вывод корпуса VFQFPN32 и 22-й VFQFPN48 — даташиты указывают NC, вывод не подключён (DS14855 и DS14836, с. 28), а в записях WL3R такого вывода нет.
Вывода BOOT0 у STM32WL3 нет: встроенный загрузчик в ПЗУ запускается, если во время аппаратного сброса на PA10 высокий уровень, иначе стартует программа из флеш-памяти (DS14221, 3.9; AN2606, шаблон 18). Загрузчик работает только через USART (AN2606, табл. 3), тактируется от HSI на 16 МГц, занимает 6 КБ системной памяти с адреса 0x1000 0000, использует последние 3 КБ ОЗУ и сам определяет скорость до 1 Мбит/с (AN2606, табл. 200; DS14221, 3.9). Приём — на PA15 в корпусе VFQFPN48 и на PB14 в VFQFPN32, передача — на PA1. Скорость UART от выбранной частоты считает калькулятор UART.
Все STM32WL3 по корпусам
STM32WL3R — Cortex-M0+
| Микроконтроллер | Корпус | Флеш-память | ОЗУ | Линий ввода-вывода |
|---|---|---|---|---|
| STM32WL3RK8 | VFQFPN32 | 64 КБ | 8 КБ | 18 |
| STM32WL3RKB | VFQFPN32 | 128 КБ | 16 КБ | 18 |
STM32WLx0 — Cortex-M0+
| Микроконтроллер | Корпус | Флеш-память | ОЗУ | Линий ввода-вывода |
|---|---|---|---|---|
| STM32WL30K8 | VFQFPN32 | 64 КБ | 8 КБ | 17 |
| STM32WL30KB | VFQFPN32 | 128 КБ | 16 КБ | 17 |
STM32WLx1 — Cortex-M0+
| Микроконтроллер | Корпус | Флеш-память | ОЗУ | Линий ввода-вывода |
|---|---|---|---|---|
| STM32WL31C8 | VFQFPN48 | 64 КБ | 8 КБ | 32 |
| STM32WL31CB | VFQFPN48 | 128 КБ | 16 КБ | 32 |
| STM32WL31K8 | VFQFPN32 | 64 КБ | 8 КБ | 17 |
| STM32WL31KB | VFQFPN32 | 128 КБ | 16 КБ | 17 |
STM32WLx3 — Cortex-M0+
| Микроконтроллер | Корпус | Флеш-память | ОЗУ | Линий ввода-вывода |
|---|---|---|---|---|
| STM32WL33C8 | VFQFPN48 | 64 КБ | 16 КБ | 32 |
| STM32WL33CB | VFQFPN48 | 128 КБ | 32 КБ | 32 |
| STM32WL33CC | VFQFPN48 | 256 КБ | 32 КБ | 32 |
| STM32WL33K8 | VFQFPN32 | 64 КБ | 16 КБ | 17 |
| STM32WL33KB | VFQFPN32 | 128 КБ | 32 КБ | 17 |
| STM32WL33KC | VFQFPN32 | 256 КБ | 32 КБ | 17 |
Перед разводкой платы сверяйте выводы с даташитом своего исполнения: в нём указаны допустимые напряжения на выводах, токи, схемы согласования выходов TX и TX_HP и номиналы внешних компонентов SMPS.
Частые вопросы
Чем STM32WL3 отличается от STM32WL (WLE5, WL55)?
Ядром и радио. У STM32WLE5 одно ядро Cortex-M4, у WL55 — Cortex-M4 и Cortex-M0+, оба на 48 МГц, и у обеих линеек есть модуляция LoRa. У STM32WL3 ядро Cortex-M0+ до 64 МГц, а радио работает с (G)FSK, (G)MSK, 4(G)FSK, OOK, ASK, D-BPSK и DSSS; LoRa в перечне модуляций нет (DS14221, с. 1). Зато у STM32WL33 есть приёмник пробуждения LPAWUR и контроллер ЖКИ, а по описанию ST радио совместимо с W-MBUS, Sigfox, Mioty, KNX-RF и IEEE 802.15.4g.
Что означают буквы X и A в заказном номере STM32WL33?
X — исполнение только с передатчиком (TX only version), A — другие диапазоны частот (DS14221, табл. 74). Без буквы STM32WL33 работает в диапазонах 413–479 и 826–958 МГц, с буквой A — 159–185 и 398–464 МГц. По RM0511 у исполнений X нет только приёмной части радио, остальное как у обычного WL33. У STM32WL3R буква X тоже означает исполнение только с передатчиком (DS15018, табл. 64).
Какую мощность выдаёт передатчик STM32WL3?
До +10 дБм в режиме TX, до +16 дБм в режиме TXHP и до +20 дБм в режиме TX+TXHP (DS14221, раздел о радио; так же в DS14855 и DS14836). При +10 дБм радио потребляет 8 мА, при +20 дБм — 78 мА. У STM32WL3R на первой странице DS15018 для диапазона 276–319 МГц указано до 14 дБм, а для остальных — до 20 дБм; в таблице характеристик передатчика того же даташита максимум для 276–319 МГц — 16 дБм (табл. 39).
Как запустить загрузчик STM32WL3?
Подать высокий уровень на PA10 во время аппаратного сброса: тогда загрузчик в ПЗУ ждёт команд по USART, иначе запускается программа из флеш-памяти (DS14221, 3.9; AN2606, шаблон 18). Приём — на PA15 в корпусе VFQFPN48 и на PB14 в VFQFPN32, передача — на PA1, скорость определяется сама, до 1 Мбит/с (AN2606, табл. 200).
Чем STM32WL33 отличается от WL31 и WL30?
Набором периферии и памятью. WL30 ST называет линейкой модема: корпус только VFQFPN32, из интерфейсов USART, LPUART и SPI. WL31 — линейка IoT: добавлены АЦП и I²C, есть корпус VFQFPN48, и в нём — второй SPI. WL33 — полный набор: ЖКИ, компаратор, ЦАП, контроллер LC-датчика, приёмник пробуждения LPAWUR и до 256 КБ флеш-памяти и 32 КБ ОЗУ против 128 и 16 КБ у WL30 и WL31 (DS14855, DS14836, DS14221).
Смотрите также
- STM32Распиновки по корпусам, альтернативные функции, похожие по выводам МК
- STM32WLCortex-M4 до 48 МГц с радио LoRa 150–960 МГц: WLE5, WLE4, WL55, WL54 — радио, ядра, загрузка и распиновки
- STM32WBACortex-M33 до 100 МГц с радио 2,4 ГГц: WBA52–WBA55 и WBA62–WBA65 — радио, SMPS, загрузка и распиновки
- STM32WB0Cortex-M0+ до 64 МГц с Bluetooth LE 5.4: WB05, WB06, WB07 и WB09 — память, радио, загрузчик и распиновки
- Время работы от батареимА·ч, средний ток, сон МК, Вт·ч
- Скорость UARTUBRR, BRR, TH1 и ошибка скорости
- Загрузчик (bootloader)Прошивка МК без программатора через UART или USB