How to Select the Best STM32 Microcontroller for Your Project

How to Select the Best STM32 Microcontroller for Your Project

Published on

The STM32 is a popular family of 32-bit microcontrollers from ST Microelectronics which are all based on ARM Cortex-M architectures.

But it’s a huge family that includes numerous variants.

In fact, Digikey shows 3,954 different STM32 microcontroller versions available!

This includes low-end versions intended to replace cheap 8-bit microcontrollers, low-power versions for mobile applications, wireless versions for IoT, and even ultra high-performance versions that can run up to 600MHz.

It can be an overwhelming process trying to figure out which version to select, so in this video I’m going to help you select the best STM32 for your specific project.

The STM32 family is split into 8 different sub-families or series including:

STM32 Series:
F series Original series. 90nm process
L series Low-power series. 90nm process
U series Low-power performance. Only U5 right now. 40nm process
H series Highest performance series. 40nm process
G series Budget series. 90nm process
C series Ultra low-cost series. Only C0 right now.
W series Wireless series- BLE, Zigbee, Thread, and long-range version with LoRaWan
MP series Microprocessors (Not covered in this video)

Download your free handy PDF guide with all of my STM32 recommendations.

Before we dig into specifics for each STM32 series, it’s important to understand the differences between the various ARM Cortex-M processor core versions which all STM32’s use.

Cortex-M variations:
Cortex-M0 Most basic, low cost
Cortex-M0+ Most energy efficient, smallest core, lowest cost, Memory Protection Unit (MPU)
Cortex-M3 Mid-point between cost and performance. High-performance, real-time processing for cost-constrained applications.
Cortex-M4 Adds DSP, optional FPU, higher max clock speed, same DMIPS/MHz as M3
Cortex-M4F Commonly (but not always used) to signify an M4 with an optional FPU
Cortex-M7 2x DMIPS/MHZ as M3/M4, optional double-precision FPU, Higher clock speed
Cortex-M33 Enhanced security features, FPU, DSP extension, 20% greater performance than M4. Uses ARMv8 instruction set, versus all other M cores use ARMv7.

Grouped by processor core(s):
STM32F0 Cortex-M0 @ 48MHz
STM32C0 Cortex-M0+ @ 48MHz
STM32G0 Cortex-M0+ @ 64MHz
STM32L0 Cortex-M0+ @ 32MHz

STM32F1 Cortex-M3 @ 72MHz
STM32F2 Cortex-M3 @ 120MHz
STM32L1 Cortex-M3 @ 32MHz

STM32F3 Cortex-M4F @ 72MHz
STM32F4 Cortex-M4F @ 180MHz
STM32G4 Cortex-M4F @ 170MHz
STM32L4 Cortex-M4F @ 80MHz
STM32L4+ Cortex-M4F @ 120MHz

STM32H5 Cortex-M33 @ 250MHz
STM32L5 Cortex-M33 @ 110MHz
STM32U5 Cortex-M33 @ 160MHz

STM32F7 Cortex-M7F @ 216MHz
STM32H7 Cortex-M7F @ 600MHz + Cortex-M4 @ 240MHz

STM32WL Cortex-M4 @ 48MHz + Cortex-M0+ @ 48MHz -Long-range LoRaWAN
STM32WB Cortex-M4 @ 64MHz + Cortex-M0+ @ 32MHz – BLE5.4 + ZigBee + Thread
STM32WBA Cortex-M33 @ 100MHz – BLE5.4 + ZigBee + Thread
STM32WB0 Cortex-M0+ @ 64MHz – BLE5.3

Prioritize performance, power consumption, security, wireless, and advanced features:

Priority – Performance:
– F and H series are highest performance
– F2 or F3 for moderate performance
– F4 for high performance
– F7, or H5 for very high performance
– H7 for highest level of performance 40nm process allows highest clock speeds

Priority – Power consumption:
L and U series (U5) have lowest power consumption with most low-power modes

The L-series is the primary low-power series.

The U5 is a new low-power option that uses their 40nm process instead of the 90nm process which allows it to have higher performance with higher clock speed than the L-series.

Most of the L-series is based on a Cortex-M4 core, but the L5 and U5 both instead use the Cortex-M33 core.

Priority – Security:
Select model based on Cortex-M33 core which include enhanced security features with an security extension called TrustZone.

STM32L5, STM32U5, or STM32H5 all based on Cortex-M33
STM32WBA based on M33 with BLE, Zigbee, Thread

Priority- Wireless:
STM32WL LoRaWAN
STM32WB BLE5.4 / ZigBee / Thread
STM32WBA BLE5.4 / ZigBee / Thread
STM32WB0 BLE5.3 – Coming soon

Priority – By Advanced Features:
Camera interface F4, F7 or H7
LCD-TFT display controller F4, F7 or H7
MIPI-DSI display controller A few select models of F4 and F7
Graphics accelerator F4, F7, H7
Single-precision FPU F4, F7, H5, H7
Double-precision FPU F7 and H7
External Memory Controller F2, F4, F7, H5, and H7

Priority – Cost:
C0, G series are optimized for lowest cost. F0 and F1 are also lower cost.

The C0 is the cheapest of all STM32’s and it’s designed to replace simple, low-cost 8/16-bit microcontrollers.

The G-series is the next cheapest group of STM32 microcontrollers.

Grouped by processor series with lowest Digikey cost:
STM32C0 $0.38 @ 4900
STM32G0 $0.63 @ 5,000
STM32L0 $0.68 @ 5,032
STM32F0 $0.71 @ 5,000
STM32WB0 BLE5.3 $1.36
STM32L4 $1.83 @ 2,940
STM32WB Dual-core – BLE5.4/ZigBee/Thread $1.91 @ 4,940
STM32H5 $1.92 @ 4,960
STM32F1 $2.03 @ 500
STM32F3 $2.09 @ 3,000
STM32F4 $2.13 @ 2,500
STM32L1 $2.31 @ 2,400
STM32G4 $2.58 @ 3,000
STM32WBA BLE5.4 + ZigBee + Thread $2.79 @ 2,400
STM32F7 $3.44 @ 2,400
STM32WL Dual-core – LoRaWAN $3.59 @ 1,560
STM32U5 $3.60 @ 2,500
STM32L5 $4.71 @ 1,040
STM32H7 Single-core – $4.90 @ 990
STM32F2 $5.38 @ 1,000
STM32H7 Dual-core – $12.45 @ 800

Other content you may like:

5 1 vote
Article Rating
Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Copyright 2024 Predictable Designs LLC.  Privacy policy | Terms
  10645 N Oracle Blvd, Ste 121-117, Tucson, Arizona 85737 USA