STM32


STM32 is a family of 32-bit microcontroller and microprocessor integrated circuits by STMicroelectronics. STM32 microcontrollers are grouped into related series that are based around the same 32-bit ARM processor core: Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M33, Cortex-M55, or Cortex-M85. Internally, each microcontroller consists of ARM processor core, flash memory, static RAM, a debugging interface, and various peripherals.
In addition to its microcontroller lines, STMicroelectronics has introduced microprocessor offerings such as the [|MP1] and [|MP2] series into the STM32 family. These processors are based around single or dual ARM Cortex-A cores combined with an ARM Cortex-M core. Cortex-A application processors include a memory management unit, enabling them to run advanced operating systems such as Linux.

Overview

The STM32 family of the microcontroller ICs is based on various 32-bit RISC ARM Cortex-M cores. STMicroelectronics licenses the ARM Processor IP from ARM Holdings and integrates them with custom-designed peripherals to create complete microcontroller solutions. Each STM32 microcontroller is designed for specific performance, power efficiency, and feature requirements, making them suitable for a wide range of embedded applications. The following tables summarize the STM32 family of microcontrollers and microprocessors.
SeriesARM CPU CoreTarget
[|C0]Cortex-M0+Low Cost
[|F0]Cortex-M0Mainstream
[|F1]Cortex-M3Mainstream
[|F2]Cortex-M3High Performance
F3Cortex-M4FMixed-Signal Processing
F4Cortex-M4FHigh Performance
[|F7]Cortex-M7FHigh Performance
G0Cortex-M0+Mainstream, Low Cost
G4Cortex-M4FMixed-Signal Processing
H5Cortex-M33FHigh Performance, Security
H7Cortex-M7F, or
Cortex-M7F and Cortex-M4F
High Performance
L0Cortex-M0+Low Power
L1Cortex-M3Low Power
L4Cortex-M4FLow Power
L4+Cortex-M4FLow Power
L5Cortex-M33FLow Power, Security
N6Cortex-M55F and NPUHigh Performance
U0Cortex-M0+Low Power
U3Cortex-M33FLow Power, Security
U5Cortex-M33FLow Power, Security
V8Cortex-M85FHigh Performance, Security
WB0Cortex-M0+Wireless
WBCortex-M4F and Cortex-M0+Wireless
WBACortex-M33FWireless, Security
WLCortex-M4 and/or Cortex-M0+Wireless

SeriesARM CPU CoreTarget
MP1Single or Dual Cortex-A7 and optionally Cortex-M4Embedded Linux, Industrial, IoT
MP2Dual Cortex-A35 Cores + Cortex-M33High Performance, Machine Learning, Advanced HMI

History

The STM32 is the third ARM family by STMicroelectronics. It follows their earlier STR9 family based on the ARM9E core, and STR7 family based on the ARM7TDMI core. The following is the history of how the STM32 family has evolved.
DateAnnouncement
October 2006STMicroelectronics licensed the ARM Cortex-M3 core
June 2007ST announced the STM32 F1-series based on the ARM Cortex-M3
October 2009ST announced new ARM chips would be built using the 90 nm process
April 2010ST announced the STM32 L1-series chips
November 2010ST announced the STM32 F2-series chips based on the ARM Cortex-M3 core, and future development
March 2011ST announced the expansion of their STM32 L1-series chips with flash densities of 256 KB and 384 KB
September 2011ST announced the STM32 F4-series chips based on the ARM Cortex-M4F core
February 2012ST announced the STM32 F0-series chips based on the ARM Cortex-M0 core
June 2012ST announced the STM32 F3-series chips based on the ARM Cortex-M4F core
January 2013ST announced full Java support for STM32 F2 and F4-series chips
February 2013ST announced STM32 Embedded Coder support for MATLAB and Simulink
February 2013ST announced the STM32 F4x9-series chips
April 2013ST announced the STM32 F401-series chips
July 2013ST announced the STM32 F030-series chips and availability in a TSSOP20 package
December 2013ST announced that it is joining the mbed project
January 2014ST announced the STM32 F0x2-series chips
February 2014ST announced the STM32 L0-series chips based on the ARM Cortex-M0+ core
February 2014ST announced multiple STM32 Nucleo boards with Arduino headers and mbed IDE
February 2014ST announced the release of free STM32Cube software tool with graphical configurator and C code
September 2014ST announced the STM32 F7 series, the first chips based on the Cortex-M7F core
October 2016STM32H7 series announced, based on ARM Cortex-M7F core, produced using 40 nm technology, runs at 400 MHz
November 2017STM32L4+ series announced, an upgrade to STM32L4 series Cortex-M4 MCUs
October 2018STM32L5 series announced, ultra-low-power MCUs based on ARM Cortex-M33 core with various security features
February 2021STM32U5 series announced, ultra-low-power MCUs based on ARM Cortex-M33 core with low power and hardware & software-based security measures targeting PSA Certified and SESIP assurance level 3 with physical attacker resistance
January 2023STM32C0 series announced, based on ARM Cortex-M0+ core, targeting equipment like home appliances, industrial pumps, fans, smoke detectors, typically served by simpler 8-bit and 16-bit MCUs.
March 2023STM32H5 series announced, based on ARM Cortex-M33 core, designed for smart, connected devices, which provide more intelligence “in the edge” and also strengthens defenses against attacks on IoT assets.
March 2024STM32U0 series announced, based on ARM Cortex-M0+ core, targeting ultra-low power entry-level battery-powered applications in industrial, medical, smart metering, and consumer wellness markets.

Series

The STM32 family consists of many series of microcontrollers. Each STM32 microcontroller series is based upon a specific ARM Cortex-M processor core.

STM32 C0

The STM32 C0-series is an entry-level low-cost STM32-series of microcontrollers:
  • ARM Cortex-M0+ core at a maximum clock rate of 48 MHz.

    STM32 F0

The STM32 F0-series are the first group of ARM Cortex-M0 chips in the STM32 family. The summary for this series is:
  • Core:
  • * ARM Cortex-M0 core at a maximum clock rate of 48 MHz.
  • * Cortex-M0 options include the SysTick Timer.
  • Memory:
  • * Static RAM consists of 4 / 6 / 8 / 16 / 32 KB general purpose with hardware parity checking.
  • * Flash consists of 16 / 32 / 64 / 128 / 256 KB general purpose.
  • * Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
  • * Each F0-series includes various peripherals that vary from line to line.
  • Oscillators consists of internal, optional external.
  • IC packages: TSSOP20, UFQFPN32, LQFP/UFQFN48, LQFP64, LQFP/UFBGA100.
  • Operating voltage range is 2.0 to 3.6 volt with the possibility to go down to 1.65 V.

    STM32 F1

The STM32 F1-series was the first group of STM32 microcontrollers based on the ARM Cortex-M3 core and considered their mainstream ARM microcontrollers. The F1-series has evolved over time by increasing CPU speed, size of internal memory, variety of peripherals. There are five F1 lines: Connectivity, Performance, USB Access, Access, Value. The summary for this series is:
  • Core:
  • * ARM Cortex-M3 core at a maximum clock rate of 24 / 36 / 48 / 72 MHz.
  • Memory:
  • * Static RAM consists of 4 / 6 / 8 / 10 / 16 / 20 / 24 / 32 / 48 / 64 / 80 / 96 KB.
  • * Flash consists of 16 / 32 / 64 / 128 / 256 / 384 / 512 / 768 / 1024 KB.
  • Peripherals:
  • * Each F1-series includes various peripherals that vary from line to line.
  • IC packages: VFQFPN36, VFQFPN48, LQFP48, WLCSP64, TFBGA64, LQFP64, LQFP100, LFBGA100, LQFP144, LFBGA144.

    STM32 F2

The STM32 F2-series of STM32 microcontrollers based on the ARM Cortex-M3 core. It is the most recent and fastest Cortex-M3 series. The F2 is pin-to-pin compatible with the STM32 F4-series. The summary for this series is:
  • Core:
  • * ARM Cortex-M3 core at a maximum clock rate of 120 MHz.
  • Memory:
  • * Static RAM consists of 64 / 96 / 128 KB general purpose, 4 KB battery-backed, 80 bytes battery-backed with tamper-detection erase.
  • * Flash consists of 128 / 256 / 512 / 768 / 1024 KB general purpose, 30 KB system boot, 512 bytes one-time programmable, 16 option bytes.
  • * Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
  • * Common peripherals included in all IC packages are USB 2.0 OTG HS, two CAN 2.0B, one SPI + two SPI or I²S, three I²C, four USART, two UART, SDIO/MMC, twelve 16-bit timers, two 32-bit timers, two watchdog timers, temperature sensor, 16 or 24 channels into three ADCs, two DACs, 51 to 140 GPIOs, sixteen DMA, real-time clock, cyclic redundancy check engine, random number generator engine. Larger IC packages add 8/16-bit external memory bus capabilities.
  • * The STM32F2x7 models add Ethernet MAC, camera interface, USB 2.0 OTG FS.
  • * The STM32F21x models add a cryptographic processor for DES / TDES / AES, and a hash processor for SHA-1 and MD5.
  • Oscillators consists of internal, optional external.
  • IC packages: WLCSP64, LQFP64, LQFP100, LQFP144, LQFP176, UFBGA176.
  • Operating voltage range is 1.8 to 3.6 volt.