STM32 is a family of 32-bit microcontroller and microprocessor integrated circuits made 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(s), flash memory, static RAM, a debugging interface, and various peripherals.
In addition to its microcontroller lines, STMicroelectronics has introduced microprocessor (MPU) 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 (MMU), 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 (MCUs) and microprocessors (MPUs).
+ STM32 microcontrollers (MCUs) Series ARM CPU core(s) Target C0 Cortex-M0+ Low-cost C5 Cortex-M33F Low-cost F0 Cortex-M0 Mainstream F1 Cortex-M3 Mainstream F2 Cortex-M3 High-performance F3 Cortex-M4F Mixed-signal processing F4 Cortex-M4F High-performance F7 Cortex-M7F High-performance G0 Cortex-M0+ Mainstream, Low Cost G4 Cortex-M4F Mixed-signal processing H5 Cortex-M33F High-performance, security H7 Cortex-M7F (single), orCortex-M7F and Cortex-M4F High-performance L0 Cortex-M0+ Low-power L1 Cortex-M3 Low-power L4 Cortex-M4F Low Power L4+ Cortex-M4F Low-power L5 Cortex-M33F Low-power, security N6 Cortex-M55F and NPU High-performance (Machine learning inference) U0 Cortex-M0+ Low-power U3 Cortex-M33F Low-power, security U5 Cortex-M33F Low-power, security V8 Cortex-M85F High-performance, security WB0 Cortex-M0+ Wireless (Bluetooth LE) WB Cortex-M4F and Cortex-M0+ Wireless (Bluetooth LE, IEEE 802.15.4) WBA Cortex-M33F Wireless (Bluetooth LE, IEEE 802.15.4), security WL Cortex-M4 and/or Cortex-M0+ Wireless (LoRa, sub-GHz)
+ STM32 microprocessors (MPUs) Series ARM CPU core(s) Target MP1 Single or Dual Cortex-A7 and optionally Cortex-M4 Embedded Linux, industrial, IoT MP2 Dual Cortex-A35 Cores + Cortex-M33 High-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.
Date Announcement October 2006 STMicroelectronics licensed the ARM Cortex-M3 core June 2007 ST announced the STM32 F1-series based on the ARM Cortex-M3 October 2009 ST announced new ARM chips would be built using the 90 nm process April 2010 ST announced the STM32 L1-series chips November 2010 ST announced the STM32 F2-series chips based on the ARM Cortex-M3 core, and future development March 2011 ST announced the expansion of their STM32 L1-series chips with flash densities of 256 KB and 384 KB September 2011 ST announced the STM32 F4-series chips based on the ARM Cortex-M4F core February 2012 ST announced the STM32 F0-series chips based on the ARM Cortex-M0 core June 2012 ST announced the STM32 F3-series chips based on the ARM Cortex-M4F core January 2013 ST announced full Java support for STM32 F2 and F4-series chips February 2013 ST announced STM32 Embedded Coder support for MATLAB and Simulink February 2013 ST announced the STM32 F4x9-series chips April 2013 ST announced the STM32 F401-series chips July 2013 ST announced the STM32 F030-series chips and availability in a TSSOP20 package December 2013 ST announced that it is joining the mbed project January 2014 ST announced the STM32 F0x2-series chips February 2014 ST announced the STM32 L0-series chips based on the ARM Cortex-M0+ core February 2014 ST announced multiple STM32 Nucleo boards with Arduino headers and mbed IDE February 2014 ST announced the release of free STM32Cube software tool with graphical configurator and C code September 2014 ST announced the STM32 F7 series, the first chips based on the Cortex-M7F core October 2016 STM32H7 series announced, based on ARM Cortex-M7F core, produced using 40 nm technology, runs at 400 MHz November 2017 STM32L4+ series announced, an upgrade to STM32L4 series Cortex-M4 MCUs October 2018 STM32L5 series announced, ultra-low-power MCUs based on ARM Cortex-M33 core with various security features February 2021 STM32U5 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 2023 STM32C0 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 2023 STM32H5 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 2024 STM32U0 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.March 2026STM32C5 with Cortex-M33, increased performance with cost efficiency and enhanced end-device capabilities. Aiming at consumer and professional devices.April 2026MathWorks released the STM32 Microcontroller Blockset, adding support for STM32 microcontrollers
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. (except STM32F030x4/6/8/C and STM32F070x6/B,) Peripherals: Each F0-series includes various peripherals that vary from line to line. Oscillators consists of internal (8 MHz, 40 kHz), optional external (1 to 32 MHz, 32.768 to 1000 kHz). 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 (STM32F105/107), Performance (STM32F103), USB Access (STM32F102), Access (STM32F101), Value (STM32F100). 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 (OTP), 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 (RTC), cyclic redundancy check (CRC) engine, random number generator (RNG) 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 (16 MHz, 32 kHz), optional external (4 to 26 MHz, 32.768 to 1000 kHz). IC packages: WLCSP64, LQFP64, LQFP100, LQFP144, LQFP176, UFBGA176. Operating voltage range is 1.8 to 3.6 volt.
STM32 F3
The STM32 F3-series is the second group of STM32 microcontrollers based on the ARM Cortex-M4F core. The F3 is almost pin-to-pin compatible with the STM32 F1-series. The summary for this series is: Core: ARM Cortex-M4F core at a maximum clock rate of 72 MHz. Memory: Static RAM consists of 16 / 24 / 32 / 40 KB general purpose with hardware parity check, 0 / 8 KB core coupled memory (CCM) with hardware parity check, 64 / 128 bytes battery-backed with tamper-detection erase. Flash consists of 64 / 128 / 256 KB general purpose, 8 KB system boot, and option bytes. Each chip has a factory-programmed 96-bit unique device identifier number. Peripherals: Each F3-series includes various peripherals that vary from line to line. Oscillators consists of internal (8 MHz, 40 kHz), optional external (1 to 32 MHz, 32.768 to 1000 kHz). IC packages: LQFP48, LQFP64, LQFP100, UFBGA100. Operating voltage range is 2.0 to 3.6 volt.
The distinguishing feature for this series is presence of four fast, 12-bit, simultaneous sampling ADCs (multiplexer to over 30 channels), and four matched, 8 MHz bandwidth op-amps with all pins exposed and additionally internal PGA (Programmable Gain Array) network. The exposed pads allow for a range of analog signal conditioning circuits like band-pass filters, anti-alias filters, charge amplifiers, integrators/differentiators, 'instrumentation' high-gain differential inputs, and other. This eliminates need for external op-amps for many applications. The built-in two-channel DAC has arbitrary waveform as well as a hardware-generated waveform (sine, triangle, noise etc.) capability. All analog devices can be completely independent, or partially internally connected, meaning that one can have nearly everything that is needed for an advanced measurement and sensor interfacing system in a single chip.
The four ADCs can be simultaneously sampled making a wide range of precision analog control equipment possible. It is also possible to use a hardware scheduler for the multiplexer array, allowing good timing accuracy when sampling more than 4 channels, independent of the main processor thread. The sampling and multiplexing trigger can be controlled from a variety of sources including timers and built-in comparators, allowing for irregular sampling intervals where needed.
STM32F37/38xxx integrate a 14-effective number of bits delta-sigma ADC.