STM32

{{short description|ARM Cortex-M based Microcontrollers by STMicroelectronics}}

{{Multiple issues|

{{Citation style|date=June 2013|details=inlining of external links shouldn't be used.}}

{{Overly detailed|date=October 2023}}

{{Technical|date=October 2023}}

{{External links|date=October 2023}}

}}

{{Infobox CPU

|name = STM32 Family{{Cite web|title=STM32 32-bit Arm Cortex MCUs|url=https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image = STM32H7B0.jpg

|caption = STM32H7 series IC

|produced-start = 2007

|produced-end = Current

|slowest = 24

|fastest = 800

|slow-unit =

|fast-unit = MHz

|size-from = 180

|size-to = 40 nm

|designfirm = STMicroelectronics

|arch =

|microarch = {{Nowrap|ARM Cortex-M0,{{Cite web|title=Cortex-M0|url=https://developer.arm.com/Processors/Cortex-M0|access-date=2022-08-22|website=developer.arm.com}}}} {{Nowrap|ARM Cortex-M0+,{{Cite web|title=Cortex-M0+|url=https://developer.arm.com/Processors/Cortex-M0-Plus|access-date=2022-08-22|website=developer.arm.com}}}} {{Nowrap|ARM Cortex-M3,{{Cite web|title=Cortex-M3|url=https://developer.arm.com/Processors/Cortex-M3|access-date=2022-08-22|website=developer.arm.com}}}} {{Nowrap|ARM Cortex-M4,{{Cite web|title=Cortex-M4|url=https://developer.arm.com/Processors/Cortex-M4|access-date=2022-08-22|website=developer.arm.com}}}} {{Nowrap|ARM Cortex-M7,{{Cite web|title=Cortex-M7|url=https://developer.arm.com/Processors/Cortex-M7|access-date=2022-08-22|website=developer.arm.com}}}} {{Nowrap|ARM Cortex-M33{{cite web |title=Cortex-M33 Home |url=https://developer.arm.com/Processors/Cortex-M33 |website=ARM Limited}}}} {{Nowrap|ARM Cortex-M55{{cite web |title=Cortex-M55 Home |url=https://developer.arm.com/Processors/Cortex-M55 |website=ARM Limited}}}}

}}

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, or Cortex-M55. 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.{{Cite web |title=Microprocessors - STM32 Arm Cortex 32-bit MPU - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32-arm-cortex-mpus.html |access-date=17 February 2025 |website=STMicroelectronics}} Cortex-A application processors include a memory management unit (MMU),{{Cite web |title=ARM Compiler Software Development Guide Version 5.06 |url=https://developer.arm.com/documentation/dui0471/m/key-features-of-arm-architecture-versions/about-the-arm-architectures |access-date=17 February 2025 |website=Arm}} enabling them to run advanced operating systems such as Linux.

Overview

File:STM32F100C4T6B-HD.jpg]]

{{See also|ARM architecture|ARM Cortex-M}}

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).

class="wikitable"

|+ STM32 Microcontrollers (MCUs)

SeriesARM CPU Core(s)Target
Cortex-M0{{Cite web |title=STM32F0 - Arm Cortex-M0 - USB Microcontrollers - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Mainstream
Cortex-M0+{{Cite web |title=Your next 8-bit MCU is a 32-bit. It’s called STM32C0! - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32c0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Cost
Cortex-M0+{{Cite web |title=STM32G0 Series - Cost-effective Arm Cortex-M0+ Microcontrollers (MCUs) - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32g0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Mainstream, Low Cost
Cortex-M0+{{Cite web |title=STM32L0 - ARM Cortex-M0+ ultra-low-power MCUs - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32l0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power
Cortex-M0+{{Cite web |title=STM32U0 series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32u0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power
Cortex-M0+{{Cite web |title=STM32WB0 series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32wb0-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Wireless (Bluetooth LE)
Cortex-M3{{Cite web |title=STM32F1 - Arm Cortex-M3 Microcontrollers - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f1-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Mainstream
Cortex-M3{{Cite web |title=STM32F2 - ARM Cortex-M3 Microcontrollers - High-Performance MCUs - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f2-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance
Cortex-M3{{Cite web |title=STM32L1 - ARM Cortex-M3 ultra-low-power MCUs - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32l1-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power
Cortex-M4F{{Cite web |title=STM32F3 Mixed-Signal Microcontrollers (MCU) - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f3-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Mixed-Signal Processing
Cortex-M4F{{Cite web |title=STM32F4 - ARM Cortex-M4 High-Performance MCUs - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance
Cortex-M4F{{Cite web |title=STM32G4 Series of mixed-signals MCUs with DSP and FPU instructions - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32g4-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Mixed-Signal Processing
Cortex-M4F{{Cite web |title=STM32L4 - ARM Cortex-M4 ultra-low-power MCUs - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32l4-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power
Cortex-M4F{{Cite web |title=STM32L4+ Ultra‐Low‐Power Microcontrollers (MCU) with embedded graphics features - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32l4-plus-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power
Cortex-M4F and Cortex-M0+{{Cite web |title=STM32WB - Bluetooth, Wireless Microcontrollers (MCU) - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32wb-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Wireless (Bluetooth LE, IEEE 802.15.4)
Cortex-M4 and/or Cortex-M0+{{Cite web |title=STM32WL series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32wl-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Wireless (LoRa, Sub-GHz)
Cortex-M7F{{Cite web |title=STM32F7 - Very high-performance MCUs with Cortex-M7 - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32f7-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance
Single (Cortex-M7F) or Dual (Cortex-M7F + Cortex-M4F) Core{{Cite web |title=STM32H7 - Arm Cortex-M7 and Cortex-M4 MCUs (480 MHz) - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32h7-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance
Cortex-M33F{{Cite web |title=STM32H5 series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32h5-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance, Security
Cortex-M33F{{Cite web |title=STM32L5 - Ultra-low-power MCUs, Enhanced Security for IoT and Embedded Applications - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32l5-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power, Security
Cortex-M33F{{Cite web |title=STM32U5 series of Ultra-low-power MCUs Enhanced Security for IoT and Embedded Applications - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32u5-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Low Power, Security
Cortex-M33F{{Cite web |title=Wireless STM32WBA microcontrollers supporting Bluetooth Low Energy 5.4 connectivity - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32wba-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Wireless (Bluetooth LE, IEEE 802.15.4), Security
Cortex-M55F{{Cite web |title=STM32N6 series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32n6-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance (Machine Learning Inference)

class="wikitable"

|+ STM32 Microprocessors (MPUs)

SeriesARM CPU Core(s)Target
Single or Dual Cortex-A7 and optionally Cortex-M4{{Cite web |title=STM32MP1 microprocessor series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32mp1-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
Embedded Linux, Industrial, IoT
Dual Cortex-A35 Cores + Cortex-M33{{Cite web |title=STM32MP2 series - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32mp2-series.html |access-date=17 February 2025 |website=STMicroelectronics}}
High Performance, Machine Learning, Advanced HMI

History

File:STM32F103VGT6-HD.jpg]]

File:MicroSTM32.jpg

The STM32 is the third ARM family by STMicroelectronics. It follows their earlier STR9 family based on the ARM9E core,{{Cite web|title=Legacy MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/legacy-mcus.html|access-date=2022-08-22|website=www.st.com|language=en}} and STR7 family based on the ARM7TDMI core.{{Cite web|title=STR7 32-bit ARM7 MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/str7-32-bit-arm7-mcus.html|access-date=2022-08-22|website=www.st.com|language=en}} The following is the history of how the STM32 family has evolved.

class="wikitable" style="vertical-align:middle;"
style="font-weight:bold;"

! 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.

Series

The STM32 family consists of many series of microcontrollers: C0, F0, F1, F2, F3, F4, F7, G0, G4, H5, H7, L0, L1, L4, L4+, L5, U0, U5, WBA, WB, WL, N6. Each STM32 microcontroller series is based upon a specific ARM Cortex-M processor core.

=STM32 F0=

{{Infobox CPU

|name = STM32 F0 series{{Cite web|title=STM32F0 - Arm Cortex-M0 - USB Microcontrollers - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f0-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2012

|produced-end = current

|slowest = 48

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 180 nm{{cite web|title=STM32G0: 1st Mainstream 90 nm MCU, One Power Line, So Many Possibilities|date=4 December 2018 |url=https://blog.st.com/stm32g0-mainstream-90-nm-mcu/}}

|size-to =

|arch = Thumb-1 (most),
Thumb-2 (some)

|microarch = ARM Cortex-M0

}}

The STM32 F0-series are the first group of ARM Cortex-M0 chips in the STM32 family. The summary for this series is:{{Cite web|date=2012-06-14|title=STMicroelectronics Leverages STM32 "DNA," Targeting Budget Applications|url=http://www.st.com/internet/com/press_release/p3275.jsp|access-date=2022-08-22|archive-date=2012-06-14|archive-url=https://web.archive.org/web/20120614221756/http://www.st.com/internet/com/press_release/p3275.jsp|url-status=bot: unknown}}{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}

  • 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,{{cite web|title=ST Forum - STM32F0 Unique ID Location|url=https://community.st.com/s/question/0D50X00009XkfKFSAZ/stm32f0-unique-id-location}})
  • 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.

{{clear}}

=STM32 F1=

{{Infobox CPU

|name = STM32 F1 series{{Cite web|title=STM32F1 - Arm Cortex-M3 Microcontrollers - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f1-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2007

|produced-end = current

|slowest = 24

|fastest = 72

|slow-unit =

|fast-unit = MHz

|size-from =

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated (some)

|microarch = ARM Cortex-M3

}}

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:{{Cite web|title=STM32F1 - Arm Cortex-M3 Microcontrollers - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f1-series.html|access-date=2022-08-22|website=www.st.com|language=en}}{{Cite web|date=2014-02-15|title=STMicroelectronics Reshapes the MCU Market with New 32-Bit Family Powered by ARM Cortex-M3 Core|url=http://www.st.com/web/en/press/p2184|access-date=2022-08-22|archive-date=2014-02-15|archive-url=https://web.archive.org/web/20140215043333/http://www.st.com/web/en/press/p2184|url-status=bot: unknown}}

  • 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.

{{clear}}

=STM32 F2=

{{Infobox CPU

|name = STM32 F2 series{{Cite web|title=STM32F2 - ARM Cortex-M3 Microcontrollers - High-Performance MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f2-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2010

|produced-end = current

|slowest = 120

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 90 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated (some)

|microarch = ARM Cortex-M3

}}

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:{{Cite web|date=2011-12-17|title=STMicroelectronics Unveils Roadmap for ARM® Cortex™-M4 and -M0 Microcontrollers While Unleashing Ultimate Performance of Cortex-M3 with New STM32 F-2 Series|url=http://www.st.com/internet/com/press_release/p3029.jsp|access-date=2022-08-22|archive-date=2011-12-17|archive-url=https://web.archive.org/web/20111217193912/http://www.st.com/internet/com/press_release/p3029.jsp|url-status=bot: unknown}}{{Cite web |url=http://www.st.com/st-web-ui/static/active/cn/resource/sales_and_marketing/promotional_material/brochure/brstm32f2.pdf |title=STM32 F2 Marketing Slides; STMicroelectronics. |access-date=2013-12-13 |archive-date=2016-03-03 |archive-url=https://web.archive.org/web/20160303233829/http://www.st.com/st-web-ui/static/active/cn/resource/sales_and_marketing/promotional_material/brochure/brstm32f2.pdf |url-status=dead }}

  • 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.

{{clear}}

=STM32 F3=

{{Infobox CPU

|name = STM32 F3 series{{Cite web|title=STM32F3 Mixed-Signal Microcontrollers (MCU) - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f3-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2015

|produced-end = current

|slowest = 72

|fastest = 72

|slow-unit = MHz

|fast-unit = MHz

|size-from =

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP)

|microarch = ARM Cortex-M4F

}}

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:{{Cite web|date=2013-01-31|title=STMicroelectronics Delivers New 32-bit ARM® Cortex™ Microcontrollers for Projects Needing Digital Signal Control at Competitive Cost|url=http://www.st.com/internet/com/press_release/p3304.jsp|access-date=2022-08-22|archive-date=2013-01-31|archive-url=https://web.archive.org/web/20130131021624/http://www.st.com/internet/com/press_release/p3304.jsp|url-status=bot: unknown}}{{Cite web|date=2012-09-14|title=STMicroelectronics Begins Full Production of New STM32 F3 Microcontrollers and Introduces Supporting Discovery Kit with On-Board 9-Axis MEMS Sensors|url=http://www.st.com/internet/com/press_release/p3323.jsp|access-date=2022-08-22|archive-date=2012-09-14|archive-url=https://web.archive.org/web/20120914063755/http://www.st.com/internet/com/press_release/p3323.jsp|url-status=bot: unknown}}

  • 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.{{Cite web |date=2021 |title=AN4207: Getting started with STM32F37/38xxx SDADC (sigma-delta ADC) |url=https://www.st.com/resource/en/application_note/an4207-getting-started-with-stm32f3738xxx-sdadc-sigmadelta-adc-stmicroelectronics.pdf |url-status=live |archive-url=https://web.archive.org/web/20210924085958/https://www.st.com/resource/en/application_note/an4207-getting-started-with-stm32f3738xxx-sdadc-sigmadelta-adc-stmicroelectronics.pdf |archive-date=2021-09-24 |access-date=2023-09-03 |website=STMicroelectronics}}

The op-amps inputs feature 2-to-1 analog multiplexer, allowing for a total of eight analog channels to be pre-processed using the op-amp; all the op-amp outputs can be internally connected to ADCs.

{{clear}}

=STM32 F4=

{{Infobox CPU

|name = STM32 F4 Series{{Cite web|title=STM32F4 - ARM Cortex-M4 High-Performance MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2011

|produced-end = current

|slowest = 84

|fastest = 180

|slow-unit =

|fast-unit = MHz

|size-from = 90 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP)

|microarch = ARM Cortex-M4F

}}

The STM32 F4-series is the first group of STM32 microcontrollers based on the ARM Cortex-M4F core. The F4-series is also the first STM32 series to have DSP and floating-point instructions. The F4 is pin-to-pin compatible with the STM32 F2-series and adds higher clock speed, 64 KB CCM static RAM, full-duplex I²S, improved real-time clock, and faster ADCs. The summary for this series is:{{Cite web|date=2012-11-02|title=STMicroelectronics Launches World's Most Powerful Cortex processor-based Microcontrollers|url=http://www.st.com/internet/com/press_release/p3212.jsp|access-date=2022-08-22|archive-date=2012-11-02|archive-url=https://web.archive.org/web/20121102010543/http://www.st.com/internet/com/press_release/p3212.jsp|url-status=bot: unknown}}{{Cite web|title=Microcontroller Advances from STMicroelectronics Extend Performance Leadership for Smarter Technology Everywhere|url=https://www.st.com/content/st_com/en/about/media-center/press-item.html/microcontroller-advances-from-stmicroelectronics-extend-performa.html|access-date=2022-08-22|website=www.st.com|language=en}}{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}{{Cite web|title=STM32F4 - ARM Cortex-M4 High-Performance MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

  • Core:
  • ARM Cortex-M4F core at a maximum clock rate of 84 / 100 / 168 / 180 MHz.
  • Memory:
  • Static RAM consists of up to 192 KB general-purpose, 64 KB core-coupled memory (CCM), 4 KB battery-backed, 80 bytes battery-backed with tamper-detection erase.
  • Flash consists of 512 / 1024 / 2048 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 and FS, two CAN 2.0B, one SPI + two SPI or full-duplex I²S, three I²C, four USART, two UART, SDIO for SD/MMC cards, 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, improved 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.
  • Digital filter for sigma-delta modulators (DFSDM) interface in STM32F412 and STM32F413/423 lines{{Cite web |date=2018 |title=AN4990: Getting started with sigma-delta digital interface on applicable STM32 microcontrollers |url=https://www.st.com/resource/en/application_note/an4990-getting-started-with-sigmadelta-digital-interface-on-applicable-stm32-microcontrollers-stmicroelectronics.pdf |url-status=live |archive-url=https://web.archive.org/web/20220120133847/https://www.st.com/resource/en/application_note/an4990-getting-started-with-sigmadelta-digital-interface-on-applicable-stm32-microcontrollers-stmicroelectronics.pdf |archive-date=2022-01-20 |access-date=2023-09-03 |website=STMicroelectronics}}
  • The STM32F4x7 models add Ethernet MAC and camera interface.
  • The STM32F41x/43x models add a cryptographic processor for DES / TDES / AES, and a hash processor for SHA-1 and MD5.
  • The STM32F4x9 models add a LCD-TFT controller.
  • 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. STM32F429/439 also offers LQFP208 and UFBGA216.
  • Operating voltage range is 1.8 to 3.6 volt.

{{clear}}

=STM32 F7=

{{Infobox CPU

|name = STM32 F7 series{{Cite web|title=STM32F7 - Very high-performance MCUs with Cortex-M7 - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32f7-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2014

|produced-end = current

|slowest = 216

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 90nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP & DP)

|microarch = ARM Cortex-M7F

}}

The STM32 F7-series is a group of STM32 microcontrollers based on the ARM Cortex-M7F core. Many of the F7 series are pin-to-pin compatible with the STM32 F4-series.

Core:

  • ARM Cortex-M7F core at a maximum clock rate of 216 MHz.

Many of STM32F76xxx and STM32F77xxx models have a digital filter for sigma-delta modulators (DFSDM) interface.{{clear}}

=STM32 G0=

{{Infobox CPU

|name = STM32 G0 series{{Cite web|title=STM32G0 Series - Cost-effective Arm Cortex-M0+ Microcontrollers (MCUs) - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32g0-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2018

|produced-end = current

|slowest = 64

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 90 nm

|size-to =

|arch = Thumb-1 (most),
Thumb-2 (some)

|microarch = ARM Cortex-M0+

}}

The STM32 G0-series is a next generation of Cortex-M0/M0+ microcontrollers for budget market segment, offering the golden mean in productivity and power efficiency, e.g. better power efficiency and performance compared to the older F0 series and higher performance compared to ultra low power L0 series

  • Core:
  • ARM Cortex-M0+ core at a maximum clock rate of 64 MHz.
  • Debug interface is SWD with breakpoints and watchpoints. JTAG debugging isn't supported.
  • Memory:
  • Static RAM sizes of 8 to 128 KB general purpose with hardware parity checking and up to 144 KB without hardware parity checking, 5x 32-bit battery-backed registers with tamper-detection erase.
  • Flash sizes of 16 to 512 KB.{{cite web|title=STM32G0x1 Overview|url=https://www.st.com/en/microcontrollers-microprocessors/stm32g0x1.html#overview}}

{{clear}}

=STM32 G4=

{{Infobox CPU

|name = STM32 G4 series{{Cite web|title=STM32G4 Series of mixed-signal MCUs with DSP and FPU instructions - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32g4-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2019

|produced-end = current

|slowest = 170

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 90 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP)

|microarch = ARM Cortex-M4F

}}

The STM32 G4-series is a next generation of Cortex-M4F microcontrollers aiming to replace F3 series, offering the golden mean in productivity and power efficiency, e.g. better power efficiency and performance compared to the older F3/F4 series and higher performance compared to ultra low power L4 series, integrated several hardware accelerators.

  • Core:
  • ARM Cortex-M4F core at a maximum clock rate of 170 MHz with FPU and DSP instructions
  • Mathematical accelerators:
  • CORDIC (trigonometric and hyperbolic functions)
  • FMAC (filtering functions)
  • Memory:
  • Flash memory with error-correcting code (ECC) and sizes of 128 to 512 KB.
  • Static RAM sizes of 32 to 128 KB with hardware parity checking and CCM-SRAM routine booster, 32x 32-bit battery-backed registers with tamper-detection erase.
  • Rich advanced analog peripherals (comparator, op-amps, DAC)
  • ADC with hardware oversampling (16-bit resolution) up to 4 Msps
  • High-resolution timer version 2
  • USB Type-C interface with Power Delivery including physical layer (PHY)
  • Securable memory area
  • AES hardware encryption

{{clear}}

=STM32 H7=

{{Infobox CPU

|name = STM32 H7 series{{Cite web|title=STM32H7 - Arm Cortex-M7 and Cortex-M4 MCUs (600 MHz) - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32h7-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2017 Q2

|produced-end =

|slowest = 480

|fastest = 600

|slow-unit = MHz

|fast-unit =

|size-from = 40nm{{cite web|title=STM32H7, the Most Powerful Cortex-M7 MCU, Breaks the 2000-point Threshold in CoreMark|url=http://blog.st.com/stm32h7-powerful-cortex-m7-coremark/|website=ST.com|date=20 October 2016 |access-date=17 July 2017}}

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP & DP)

|microarch = ARM Cortex-M7F + optional ARM Cortex-M4F

}}

The STM32 H7-series is a group of high performance STM32 microcontrollers based on the ARM Cortex-M7F core with double-precision floating point unit and optional second Cortex-M4F core with single-precision floating point. Cortex-M7F core can reach working frequency up to 600 MHz, while Cortex-M4F - up to 240 MHz. Each of these cores can work independently or as master/slave core.

The STM32H7 Series is the first series of STM32 microcontrollers in 40 nm process technology and the first series of ARM Cortex-M7-based microcontrollers which is able to run up to 600 MHz, allowing a performance boost versus previous series of Cortex-M microcontrollers, reaching new performance records of 1284 DMIPS and 3174 CoreMark. {{cite web |title=STM32H7R7/7S7 - STMicroelectronics |url=https://www.st.com/en/microcontrollers-microprocessors/stm32h7r7-7s7.html |url-status=live |access-date=15 February 2025 |website=STMicroelectronics}}

{{clear}}

=STM32 L0=

{{Infobox CPU

|name = STM32 L0 series{{Cite web|title=STM32L0 - ARM Cortex-M0+ ultra-low-power MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32l0-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2014

|produced-end = current

|slowest = 32

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from =

|size-to =

|arch = Thumb-1 (most),
Thumb-2 (some)

|microarch = ARM Cortex-M0+

}}

The STM32 L0-series is the first group of STM32 microcontrollers based on the ARM Cortex-M0+ core. This series targets low power applications. The summary for this series is:{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}

  • Core:
  • ARM Cortex-M0+ core at a maximum clock rate of 32 MHz.
  • Debug interface is SWD with breakpoints and watchpoints. JTAG debugging isn't supported.
  • Memory:
  • Static RAM sizes of 8 KB general purpose with hardware parity checking, 20 bytes battery-backed with tamper-detection erase.
  • Flash sizes of 32 or 64 KB general purpose (with ECC).
  • EEPROM sizes of 2 KB (with ECC).
  • ROM which contains a boot loader with optional reprogramming of the flash from USART1, USART2, SPI1, SPI2.
  • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
  • two USART, one low-power UART, two I²C, two SPI or one I²S, one full-speed USB (only L0x2 and L0x3 chips).
  • one 12-bit ADC with multiplexer, one 12-bit DAC, two analog comparators, temperature sensor.
  • timers, low-power timers, watchdog timers, 5 V-tolerant GPIOs, real-time clock, DMA controller, CRC engine.
  • capacitive touch sense and 32-bit random number generator (only L0x2 and L0x3 chips), LCD controller (only L0x3 chips), 128-bit AES engine (only L06x chips).
  • Oscillators consists of optional external 1 to 24 MHz crystal or oscillator, optional external 32.768 kHz crystal or ceramic resonator, multiple internal oscillators, and one PLL.
  • IC packages are LQFP48, LQFP64, TFBGA64.
  • Operating voltage range is 1.8 to 3.6 volt, including a programmable brownout detector.

{{clear}}

=STM32 L1=

{{Infobox CPU

|name = STM32 L1 series{{Cite web|title=STM32L1 - ARM Cortex-M3 ultra-low-power MCUs - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32l1-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2010

|produced-end = current

|slowest = 32

|fastest =

|slow-unit = MHz

|fast-unit =

|size-from = 130 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated (some)

|microarch = ARM Cortex-M3

}}

The STM32 L1-series was the first group of STM32 microcontrollers with a primary goal of ultra-low power usage for battery-powered applications. The summary for this series is:{{Cite web|date=2011-10-03|title=STMicroelectronics Unveils STM32L Ultra-Low-Power ARM Cortex™-M3 based Microcontrollers for 'Energy-Lite' Applications|url=http://www.st.com/internet/com/press_releases/p3003.jsp|access-date=2022-08-22|archive-date=2011-10-03|archive-url=https://web.archive.org/web/20111003033650/http://www.st.com/internet/com/press_releases/p3003.jsp|url-status=bot: unknown}}{{Cite web|date=2012-11-02|title=STMicroelectronics Announces Extension and Production Availability of STM32L Ultra-Low-Power ARM Cortex™-M3 Microcontroller Series for 'Energy-Lite' Applications|url=http://www.st.com/internet/com/press_release/p3137.jsp|access-date=2022-08-22|archive-date=2012-11-02|archive-url=https://web.archive.org/web/20121102010902/http://www.st.com/internet/com/press_release/p3137.jsp|url-status=bot: unknown}}{{Cite web |url=http://www.st.com/web/en/resource/corporate/company/divisional_presentation/stm32l_Ultra-low-power_Cortex_M3.pdf |title=STM32 L1 Marketing Slides; STMicroelectronics. |access-date=2013-12-13 |archive-date=2016-03-04 |archive-url=https://web.archive.org/web/20160304001147/http://www.st.com/web/en/resource/corporate/company/divisional_presentation/stm32l_Ultra-low-power_Cortex_M3.pdf |url-status=dead }}

  • Core:
  • ARM Cortex-M3 core at a maximum clock rate of 32 MHz.
  • Memory:
  • Static RAM consists of 10 / 16 / 32 / 48 / 80 KB general purpose, 80 bytes with tamper-detection erase.
  • Flash consists of 32 / 64 / 128 / 256 / 384 / 512 KB general purpose with ECC, 4 / 8 KB system boot, 32 option bytes, EEPROM consists of 4 / 8 / 12 / 16 KB data storage with ECC.
  • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
  • Common peripherals included in all IC packages are USB 2.0 FS, two SPI, two I²C, three USART, eight 16-bit timers, two watchdog timers, temperature sensor, 16 to 24 channels into one ADC, two DACs, 37 to 83 GPIOs, seven DMA, real-time clock (RTC), cyclic redundancy check (CRC) engine. The STM32FL152 line adds a LCD controller.
  • Oscillators consists of internal (16 MHz, 38 kHz, variable 64 kHz to 4 MHz), optional external (1 to 26 MHz, 32.768 to 1000 kHz).
  • IC packages: UFQFPN48, LQFP48, LQFP64, TFBGA64, LQFP100, UFBGA100.
  • Operating voltage range is 1.65 to 3.6 volt.

{{clear}}

=STM32 L4=

{{Infobox CPU

|name = STM32 L4 series

|image =

|caption =

|produced-start = 2015

|produced-end = current

|slowest = 80 MHz

|fastest =

|slow-unit =

|fast-unit = MHz

|size-from = 90 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP)

|microarch = ARM Cortex-M4F

}}

The STM32 L4-series is an evolution of STM32L1-series of ultra-low power microcontrollers. An example of L4 MCU is STM32L432KC in UFQFPN32 package, that has:

  • ARM 32-bit Cortex-M4 core
  • 80 MHz max CPU frequency
  • VDD from 1.65 V to 3.6 V
  • 256 KB Flash, 64 KB SRAM
  • General purpose timers (4), SPI/I2S (2), I2C (2), USART (2), 12-bit ADC with 10 channels (1), GPIO (20) with external interrupt capability, RTC
  • Random number generator (TRNG for HW entropy).
  • Digital filter for sigma-delta modulators (DFSDM) interface

{{clear}}

=STM32 L4+=

{{Infobox CPU

|name = STM32 L4+ series[https://www.st.com/stm32l4+ STM32 L4+ Series; STMicroelectronics.]

|image =

|caption =

|produced-start = 2016

|produced-end = current

|slowest = 120

|fastest =

|slow-unit =

|fast-unit = MHz

|size-from = 90 nm

|size-to =

|arch = Thumb-1, Thumb-2,
Saturated, DSP,
FPU (SP)

|microarch = ARM Cortex-M4F

}}

The STM32 L4+-series is expansion of STM32L4-series of ultra-low power microcontrollers, providing more performance, more embedded memory and richer graphics and connectivity features while keeping ultra-low-power capability.

Main features:

  • ARM 32-bit Cortex-M4 core
  • 120 MHz max CPU frequency
  • VDD from 1.71 V to 3.6 V
  • Ultra low power consumption: down to 41 μA/MHz, 20 nA power consumption in power-down mode.
  • Up to 2048 KB Flash, up to 640 KB SRAM
  • Advanced peripherals, including TFT-LCD controller, Chrom-ART Accelerator, Camera interface etc.
  • Digital filter for sigma-delta modulators (DFSDM) interface

{{clear}}

=STM32 L5=

{{Infobox CPU

|name = STM32 L5 series{{Cite web|title=STM32L5 - Ultra-low-power MCUs, Enhanced Security for IoT and Embedded Applications - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32l5-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2018

|produced-end = current

|slowest = 110 MHz

|fastest =

|slow-unit =

|fast-unit = MHz

|size-from = 90 nm

|size-to =

|arch =

|microarch = ARM Cortex-M33F

}}

The STM32 L5-series is an evolution of STM32L-series of ultra-low power microcontrollers:

{{clear}}

=STM32 U0=

{{Infobox CPU

|name = STM32 U0 series{{Cite web|title=STM32U0 Series|url=https://www.st.com/en/microcontrollers-microprocessors/stm32u0-series.html|access-date=2024-05-12|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2024

|produced-end = current

|slowest = 56

|fastest =

|slow-unit =

|fast-unit = MHz

|size-from = 90 nm{{cite web|title=STM32U0: Up to 50% energy saving, the new benchmark in entry-level ultra-low power MCUs|date=19 March 2024 |url=https://blog.st.com/stm32u0/}}

|size-to =

|arch = Thumb-1 (most),
Thumb-2 (some)

|microarch = ARM Cortex-M0+

}}

The STM32 U0-series is an entry-level addition to the STM32-series of ultra-low power microcontrollers:

  • ARM Cortex-M0+ core at a maximum clock rate of 56 MHz.
  • Static consumption of 160 nA in standby mode with RTC (Real-Time Clock) and 16 nA in shutdown.
  • Up to 256KB of Flash, package options up to 81 pins.
  • Integrated LCD segment display controller.
  • Targets SESIP Level 3, PSA-Certified Level 1, and NIST certifications.

{{clear}}

=STM32 U5=

{{Infobox CPU

|name = STM32 U5 series{{Cite web|title=STM32U5 series of Ultra-low-power MCUs Enhanced Security for IoT and Embedded Applications - STMicroelectronics|url=https://www.st.com/en/microcontrollers-microprocessors/stm32u5-series.html|access-date=2022-08-22|website=www.st.com|language=en}}

|image =

|caption =

|produced-start = 2021

|produced-end = current

|slowest = 160

|fastest =

|slow-unit =

|fast-unit = MHz

|size-from = 40 nm{{cite web|title=STMicroelectronics Reveals Extreme Low-Power STM32U5 Microcontrollers with Advanced Performance and Cybersecurity|date=25 February 2021 |url=https://newsroom.st.com/media-center/press-item.html/p4329.html}}

|size-to =

|arch =

|microarch = ARM Cortex-M33F

}}

The STM32 U5-series is an evolution of STM32L-series of ultra-low power microcontrollers:

  • ARM Cortex-M33 32-bit core with 160 MHz max CPU frequency
  • 40-nm process node with down to 16 μA/MHz in active mode, 110 nA in low power mode
  • Up to 4 MB of flash memory.
  • Up to 3 MB of SRAM.
  • Advanced Vector Graphic GPU (NeoChromVG).

{{clear}}

Development boards

=Arduino Nano style=

File:Blue Pill.jpg

The following boards have Arduino Nano pin-compatible male pin headers with 0.6-inch row-to-row DIP-30 footprint, but these boards have 3.3 volt logic I/O, instead of 5 volt logic I/O for an Arduino Nano.

  • Blue Pill board has a STM32F103C8T6 microcontroller.[http://land-boards.com/blwiki/index.php?title=STM32_Blue_Pill STM32 Blue Pill; Land Boards.][https://stm32duinoforum.com/forum/wiki_subdomain/index_title_Blue_Pill.html Blue Pill; STM32duino Forum.][http://land-boards.com/blwiki/index.php?title=BLUE-PILL-HUB Blue-Pill-Hub; Land Boards.] Unfortunately, most blue pill boards now contain a fake STM32 from China.[https://github.com/keirf/greaseweazle/wiki/STM32-Fakes STM32 Fakes; GitHub.]
  • Black Pill board has a STM32F401CCU6 or STM32F411CEU6 microcontroller.[http://land-boards.com/blwiki/index.php?title=STM32_Black_Pill STM32 Black Pill; Land Boards.][https://stm32duinoforum.com/forum/wiki_subdomain/index_title_Black_Pill.html Black Pill; STM32duino Forum.][https://hackaday.com/2021/01/20/blue-pill-vs-black-pill-transitioning-from-stm32f103-to-stm32f411/ Blue Pill Vs Black Pill: Transitioning From STM32F103 To STM32F411; Hack-A-Day.]
  • ST Nucleo-32 boards have Arduino Nano pin-compatible male pin headers too.[https://www.st.com/resource/en/user_manual/dm00231744-stm32-nucleo32-boards-mb1180-stmicroelectronics.pdf STM32 Nucleo-32 User Manual; ST Microelectronics.] (see Nucleo section below)

=Arduino Uno style=

Image:Leaflabs Maple OSHW with STM32F103RBT6 MCU.jpg

The following boards have Arduino Uno pin-compatible female pin headers for Arduino shields, but these boards have 3.3 volt logic I/O, instead of 5 volt logic I/O for an Arduino Uno.

  • [http://leaflabs.com/devices/maple/ Maple] board by Leaflabs has a STM32F103RB microcontroller. A C/C++ library called [https://github.com/leaflabs/libmaple libmaple] is available to make it easier to migrate from Arduino.
  • [https://www.olimex.com/Products/Duino/STM32/OLIMEXINO-STM32/ OLIMEXINO-STM32] board by Olimex has a STM32F103RBT6 microcontroller and similar to the Maple board.
  • Netduino with support for .NET Micro Framework.
  • ST Nucleo-64 and Nucleo-144 boards have female pin headers for Arduino shields too. (see Nucleo section below)

={{Anchor|Nucleo}}ST Nucleo=

All [http://www.st.com/stm32nucleo-pr Nucleo] boards by STMicroelectronics support the mbed development environment,{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}} and have an additional onboard ST-LINK/V2-1 host adapter chip which supplies SWD debugging, virtual COM port, and mass storage over USB. There are three Nucleo board families, each supporting a different microcontroller IC package footprint.{{Cite web|title=STM32 Nucleo Boards - STMicroelectronics|url=https://www.st.com/en/evaluation-tools/stm32-nucleo-boards.html|access-date=2022-08-22|website=www.st.com|language=en}} The debugger embedded on Nucleo boards can be converted to the SEGGER J-Link debugger protocol.{{Cite web|title=ST-LINK On-Board|url=https://www.segger.com/products/debug-probes/j-link/models/other-j-links/st-link-on-board/|access-date=2022-08-22|website=www.segger.com}}

; Nucleo-32 boards[http://www.st.com/resource/en/user_manual/dm00231744.pdf STM32 Nucleo-32 Board User Manual; STMicroelectronics.]

  • This family has 32-pin STM32 ICs and Arduino Nano pin-compatible male pin headers with 0.6-inch row-to-row DIP-30 footprint.{{Cite web|title=Nano | Arduino Documentation|url=https://docs.arduino.cc/hardware/nano|access-date=2022-08-22|website=docs.arduino.cc}}
  • Low power ICs are L011, L031, L412, L432. Mainstream ICs are F031, F042, F303, G031, G431. Mbed O/S is supported for F031, F042, F303, L011, L031, L432.
  • [https://www.st.com/en/evaluation-tools/nucleo-f031k6.html NUCLEO-F031K6] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32f031k6.html STM32F031K6T6] MCU with 48 MHz Cortex-M0 core, 32 KB flash, 4 KB SRAM (HW parity).
  • [https://www.st.com/en/evaluation-tools/nucleo-f042k6.html NUCLEO-F042K6] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32f042k6.html STM32F042K6T6] MCU with 48 MHz Cortex-M0 core, 32 KB flash, 6 KB SRAM (HW parity).
  • [https://www.st.com/en/evaluation-tools/nucleo-f301k8.html NUCLEO-F301K8] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32f301k8.html STM32F301K8T6] MCU with 72 MHz Cortex-M4F core, 64 KB flash, 16 KB SRAM. (obsolete)
  • [https://www.st.com/en/evaluation-tools/nucleo-f303k8.html NUCLEO-F303K8] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32f303k8.html STM32F303K8T6] MCU with 72 MHz Cortex-M4F core, 64 KB flash, 16 KB SRAM (HW parity).
  • [https://www.st.com/en/evaluation-tools/nucleo-g031k8.html NUCLEO-G031K8] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g031k8.html STM32G031K86U] MCU with 64 MHz Cortex-M0+ core, 64 KB flash, 8 KB SRAM (HW parity).
  • [https://www.st.com/en/evaluation-tools/nucleo-g431kb.html NUCLEO-G431KB] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g431kb.html STM32G431KB6U] MCU with 170 MHz Cortex-M4F core, 128 KB flash (HW ECC), 16 KB SRAM (HW parity), 6 KB SRAM, 10 KB CCM SRAM, STLINK-V3E.
  • [https://www.st.com/en/evaluation-tools/nucleo-l011k4.html NUCLEO-L011K4] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32l011k4.html STM32L011K4T6] MCU with 32 MHz Cortex-M0+ core, 16 KB flash (HW ECC), 2 KB SRAM, 0.5 KB EEPROM (HW ECC).
  • [https://www.st.com/en/evaluation-tools/nucleo-l031k6.html NUCLEO-L031K6] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32l031k6.html STM32L031K6T6] MCU with 32 MHz Cortex-M0+ core, 32 KB flash (HW ECC), 8 KB SRAM, 1 KB EEPROM (HW ECC).
  • [https://www.st.com/en/evaluation-tools/nucleo-l412kb.html NUCLEO-L412KB] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32l412kb.html STM32L412KBU6] MCU with 80 MHz Cortex-M4F core, 128 KB flash (HW ECC), 32 KB SRAM, 8 KB SRAM (HW parity), external quad-SPI memory interface.
  • [https://www.st.com/en/evaluation-tools/nucleo-l432kc.html NUCLEO-L432KC] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32l432kc.html STM32L432KCU6] MCU with 80 MHz Cortex-M4F core, 256 KB flash (HW ECC), 48 KB SRAM, 16 KB SRAM (HW parity), external quad-SPI memory interface.

; Nucleo-64 boards[http://www.st.com/resource/en/user_manual/dm00105823.pdf STM32 Nucleo-64 Board User Manual; STMicroelectronics.]

File:Embedded World 2016, Stm32 Nucleo.jpg

  • This family has 64-pin STM32 ICs, Arduino Uno Rev3 female headers for shields, and ST Morpho male pin headers (two 19x2).{{Cite web|title=UNO R3 | Arduino Documentation|url=https://docs.arduino.cc/hardware/uno-rev3|access-date=2022-08-22|website=docs.arduino.cc}}
  • Low power ICs are L053, L073, L152, L433, L452, L452, L476. Mainstream ICs are F030, F070, F072, F091, F103, F302, F303, F334, G070, G071, G0B1, G431, G474, G491. High performance ICs are F401, F410, F411, F446.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f030r8.html NUCLEO-F030R8] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f0-series/stm32f0x0-value-line/stm32f030r8.html STM32F030R8T6] MCU with 48 MHz Cortex-M0 core, 64 KB flash, 8 KB SRAM (HW parity).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f070rb.html NUCLEO-F070RB] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f0-series/stm32f0x0-value-line/stm32f070rb.html STM32F070RBT6] MCU with 48 MHz Cortex-M0 core, 128 KB flash, 16 KB SRAM (HW parity).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f072rb.html NUCLEO-F072RB] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f0-series/stm32f0x2/stm32f072rb.html STM32F072RBT6] MCU with 48 MHz Cortex-M0 core, 128 KB flash, 16 KB SRAM (HW parity).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f091rc.html NUCLEO-F091RC] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f0-series/stm32f0x1/stm32f091rc.html STM32F091RCT6] MCU with 48 MHz Cortex-M0 core, 256 KB flash, 32 KB SRAM (HW parity).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f103rb.html NUCLEO-F103RB] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f1-series/stm32f103/stm32f103rb.html STM32F103RBT6] MCU with 72 MHz Cortex-M3 core, 128 KB flash, 20 KB SRAM, external static memory interface.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f302r8.html NUCLEO-F302R8] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f3-series/stm32f302/stm32f302r8.html STM32F302R8T6] MCU with 72 MHz Cortex-M4F core, 64 KB flash, 16 KB SRAM.{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f303re.html NUCLEO-F303RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f3-series/stm32f303/stm32f303re.html STM32F303RET6] MCU with 72 MHz Cortex-M4F core, 512 KB flash, 32 KB SRAM, 48 KB SRAM (HW parity), external static memory interface.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f334r8.html NUCLEO-F334R8] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f3-series/stm32f334/stm32f334r8.html STM32F334R8T6] MCU with 72 MHz Cortex-M4F core, 64 KB flash, 16 KB SRAM (HW parity).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f401re.html NUCLEO-F401RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f401/stm32f401re.html STM32F401RET6] MCU with 84 MHz Cortex-M4F core, 512 KB flash, 96 KB SRAM.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f410rb.html NUCLEO-F410RB] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f410/stm32f410rb.html STM32F410RBT6] MCU with 100 MHz Cortex-M4F core, 128 KB flash, 32 KB SRAM.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f411re.html NUCLEO-F411RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f411/stm32f411re.html STM32F411RET6] MCU with 100 MHz Cortex-M4F core, 512 KB flash, 128 KB SRAM.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f446re.html NUCLEO-F446RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f446/stm32f446re.html STM32F446RET6] MCU with 180 MHz Cortex-M4F core, 512 KB flash, 128 KB SRAM, external quad-SPI memory interface, external flexible memory interface.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g070rb.html NUCLEO-G070RB] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g070rb.html STM32G070RBT6] MCU with 64 MHz Cortex-M0+ core, 128 KB flash, 32 KB SRAM.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g071rb.html NUCLEO-G071RB] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g071rb.html STM32G071RBT6] MCU with 64 MHz Cortex-M0+ core, 128 KB flash, 32 KB SRAM.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g0b1re.html NUCLEO-G0B1RE] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g0b1re.html STM32G0B1RET6] MCU with 64 MHz Cortex-M0+ core, 512 KB flash, 128 KB SRAM.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g431rb.html NUCLEO-G431RB] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g431rb.html STM32G431RBT6] MCU with 170 MHz Cortex-M4F core, 128 KB flash, 32 KB SRAM.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g474re.html NUCLEO-G474RE] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g474re.html STM32G474RET6] MCU with 170 MHz Cortex-M4F core, 512 KB flash, 128 KB SRAM.
  • [https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-g491re.html NUCLEO-G491RE] board for [https://www.st.com/en/microcontrollers-microprocessors/stm32g491re.html STM32G491RET6] MCU with 170 MHz Cortex-M4F core, 512 KB flash, 112 KB SRAM.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l053r8.html NUCLEO-L053R8] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32l0-series/stm32l0x3/stm32l053r8.html STM32L053R8T6] MCU with 32 MHz Cortex-M0+ core, 64 KB flash (HW ECC), 8 KB SRAM, 2 KB EEPROM (HW ECC).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l073rz.html NUCLEO-L073RZ] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32l0-series/stm32l0x3/stm32l073rz.html STM32L073RZT6] MCU with 32 MHz Cortex-M0+ core, 192 KB flash (HW ECC), 20 KB SRAM, 6 KB EEPROM (HW ECC).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l152re.html NUCLEO-L152RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32l1-series/stm32l151-152/stm32l152re.html STM32L152RET6] MCU with 32 MHz Cortex-M3 core, 512 KB flash (HW ECC), 80 KB SRAM, 16 KB EEPROM (HW ECC).
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l433rc-p.html NUCLEO-L433RC-P] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32-ultra-low-power-mcus/stm32l4-series/stm32l4x3/stm32l433rc.html STM32L433RCT6P] MCU with 80 MHz Cortex-M4F core, 256 KB flash (HW ECC), 48 KB SRAM, 16 KB SRAM (HW parity), external quad-SPI memory interface, SMPS power.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l452re-p.html NUCLEO-L452RE-P] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32-ultra-low-power-mcus/stm32l4-series/stm32l4x2/stm32l452re.html STM32L452RET6P] MCU with 80 MHz Cortex-M4F core, 512 KB flash (HW ECC), 128 KB SRAM, 32 KB SRAM (HW parity), external quad-SPI memory interface, SMPS power.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l452re.html NUCLEO-L452RE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32-ultra-low-power-mcus/stm32l4-series/stm32l4x2/stm32l452re.html STM32L452RET6] MCU with 80 MHz Cortex-M4F core, 512 KB flash (HW ECC), 128 KB SRAM, 32 KB SRAM (HW parity), external quad-SPI memory interface.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l476rg.html NUCLEO-L476RG] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32l4-series/stm32l4x6/stm32l476rg.html STM32L476RGT6] MCU with 80 MHz Cortex-M4F core, 1024 KB flash (HW ECC), 96 KB SRAM, 32 KB SRAM (HW parity), external quad-SPI memory interface, external static memory interface.

; Nucleo-144 boards[http://www.st.com/resource/en/user_manual/dm00244518.pdf STM32 Nucleo-144 Board User Manual; STMicroelectronics.]

  • This family has 144-pin STM32 ICs, Arduino Uno Rev3 female headers for shields, ST Zio female headers, ST Morpho male pin headers (two 19x2), second Micro-AB USB connector, and RJ45 Ethernet connector (some boards).
  • Low power ICs are L496, L496-P, L4A6, L4R5, L4R5-P. Mainstream IC is F303. High performance ICs are F207, F412, F413, F429, F439, F446, F722, F746, F756, F767, H743.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f207zg.html NUCLEO-F207ZG] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f2-series/stm32f2x7/stm32f207zg.html STM32F207ZGT6] MCU with 120 MHz Cortex-M3 core, 1024 KB flash (HW ECC), 128 KB SRAM, 4 KB battery-back SRAM, external static memory interface, Ethernet.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f303ze.html NUCLEO-F303ZE] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f3-series/stm32f303/stm32f303ze.html STM32F303ZET6] MCU with 72 MHz Cortex-M4F core, 512 KB flash (HW ECC), 32 KB SRAM, 48 KB SRAM (HW parity), external static memory interface.
  • [http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-f412zg.html NUCLEO-F412ZG] board for [http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series/stm32f412/stm32f412zg.html STM32F412ZGT6] MCU with 100 MHz Cortex-M4F core, 1024 KB flash, 256 KB SRAM, external quad-SPI memory interface, external static memory interface.
  • [https://www.st.com/en/evaluation-tools/nucleo-f429zi.html NUCLEO-F429ZI] board for [https://www.st.com/en/microcontrollers/stm32f429zi.html STM32F429ZIT6] MCU with 180 MHz Cortex-M4F core, 2048 KB flash, 256 KB SRAM, 4 KB battery-back SRAM, external flexible memory interface, Ethernet.
  • [https://www.st.com/en/evaluation-tools/nucleo-f439zi.html NUCLEO-F439ZI] board for [https://www.st.com/en/microcontrollers/stm32f439zi.html STM32F439ZIT6] MCU with 180 MHz Cortex-M4F core, 2048 KB flash, 256 KB SRAM, 4 KB battery-back SRAM, external flexible memory interface, Ethernet, cryptographic acceleration.
  • [https://www.st.com/en/evaluation-tools/nucleo-f446ze.html NUCLEO-F446ZE] board for [https://www.st.com/en/microcontrollers/stm32f446ze.html STM32F446ZET6] MCU with 180 MHz Cortex-M4F core, 512 KB flash, 128 KB SRAM, 4 KB battery-back SRAM, external quad-SPI memory interface, external flexible memory interface.
  • [https://www.st.com/en/evaluation-tools/nucleo-f746zg.html NUCLEO-F746ZG] board for [https://www.st.com/en/microcontrollers/stm32f746zg.html STM32F746ZGT6] MCU with 216 MHz Cortex-M7F core (4 KB data cache, 4 KB instruction cache), 1024 KB flash, 336 KB SRAM, 4 KB battery-back SRAM, 1 KB OTP, external quad-SPI memory interface, external flexible memory interface, Ethernet.
  • [https://www.st.com/en/evaluation-tools/nucleo-f767zi.html NUCLEO-F767ZI] board for [https://www.st.com/en/microcontrollers/stm32f767zi.html STM32F767ZIT6] MCU with 216 MHz Cortex-M7F-DP core (16 KB data cache, 16 KB instruction cache), 2048 KB flash, 528 KB SRAM, 4 KB battery-back SRAM, external quad-SPI memory interface, external flexible memory interface, Ethernet.
  • Note: The unofficial suffix "-DP" means the ARM core includes double-precision floating point unit, where as all other chips are single-precision only.

=ST Discovery=

The following Discovery evaluation boards are sold by STMicroelectronics to provide a quick and easy way for engineers to evaluate their microcontroller chips. These kits are available from various distributors for less than US$20. The STMicroelectronics evaluation product licence agreement forbids their use in any production system or any product that is offered for sale.[http://www.st.com/st-web-ui/static/active/en/resource/legal/legal_agreement/license_agreement/EvaluationProductLicenseAgreement.pdf STMicroelectronics Evaluation Product License Agreement]

Each board includes an on-board ST-LINK for programming and debugging via a Mini-B USB connector. The power for each board is provided by a choice of the 5 V via the USB cable, or an external 5 V power supply. They can be used as output power supplies of 3 V or 5 V (current must be less than 100 mA). All Discovery boards also include a voltage regulator, reset button, user button, multiple LEDs, SWD header on top of each board, and rows of header pins on the bottom.{{Cite web|title=STM32 Discovery Kits - STMicroelectronics|url=https://www.st.com/en/evaluation-tools/stm32-discovery-kits.html|access-date=2022-08-22|website=www.st.com|language=en}}

An open-source project was created to allow Linux to communicate with the ST-LINK debugger.{{Citation|title=Open source version of the STMicroelectronics STLINK Tools|date=2022-08-22|url=https://github.com/stlink-org/stlink|publisher=stlink-org|access-date=2022-08-22}}

ChibiOS/RT, a free RTOS, has been ported to run on some of the Discovery boards.{{Cite web |url=http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32vl_discovery |title=Getting started with the STM32VL-Discovery board and ChibiOS/RT |access-date=2015-07-08 |archive-date=2015-07-10 |archive-url=https://web.archive.org/web/20150710172318/http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32vl_discovery |url-status=dead }}{{Cite web |url=http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32l_discovery |title=Getting started with the STM32L-Discovery board and ChibiOS/RT |access-date=2015-07-08 |archive-date=2015-07-10 |archive-url=https://web.archive.org/web/20150710160156/http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32l_discovery |url-status=dead }}{{Cite web |url=http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32f4_discovery |title=Getting started with the STM32F4-Discovery board and ChibiOS/RT |access-date=2015-07-08 |archive-date=2015-07-10 |archive-url=https://web.archive.org/web/20150710165433/http://wiki.chibios.org/dokuwiki/doku.php?id=chibios:articles:stm32f4_discovery |url-status=dead }}

;STM32L476GDISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32l476gdiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32l476vg.html STM32L476VGT6] microcontroller with 80 MHz ARM Cortex-M4F core, 1024 KB flash, 128 KB RAM in LQFP100 package

;STM32F429IDISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32f429idiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f429zi.html STM32F429ZIT6] microcontroller with 180 MHz ARM Cortex-M4F core, 2048 KB flash, 256 KB RAM, 4 KB battery-backed RAM in LQFP144 package.{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 8 MB SDRAM (IS42S16400J), 2.4-inch 320x200 TFT LCD color display (SF-TC240T), touchscreen controller (STMPE811), gyroscope (L3GD20), 2 user LEDs, user button, reset button, Full-Speed USB OTG to second Micro-AB USB connector, and two 32x2 male pin headers.

;STM32F4DISCOVERY

File:STM32F4 Discovery (9067300323).jpg

  • A [https://www.st.com/en/evaluation-tools/stm32f4discovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f407vg.html STM32F407VGT6] microcontroller with 168 MHz ARM Cortex-M4F core, 1024 KB flash, 192 KB RAM, 4 KB battery-backed RAM in LQFP100 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, accelerometer (LIS302DL), microphone (MP45DT02), audio codec (CS43L22), 3.5 mm audio jack, 4 user LEDs, user button, reset button, Full-Speed USB OTG to second Micro-AB USB connector, and two 25x2 male pin headers.
  • A separate [http://www.farnell.com/datasheets/1671410.pdf STM32F4DIS-BB] baseboard is available.

;STM32F401CDISCOVERY

  • A [http://www.st.com/web/catalog/tools/PF259098 discovery board] for [https://www.st.com/en/microcontrollers/stm32f401vc.html STM32F401VCT6] microcontroller with 84 MHz ARM Cortex-M4F core, 256 KB flash, 64 KB RAM in LQFP100 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, accelerometer/compass (LSM303DLHC), gyroscope (L3GD20), microphone (MP45DT02), audio codec (CS43L22), 3.5 mm audio jack, 4 user LEDs, user button, reset button, Full-Speed USB OTG to second Micro-AB USB connector, and two 25x2 male pin headers.

;STM32F3DISCOVERY

  • A [https://www.st.com/en/evaluation-tools/stm32f3discovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f303vc.html STM32F303VCT6] microcontroller with 72 MHz ARM Cortex-M4F core, 256 KB flash, 48 KB RAM (24K with parity) in LQFP100 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, accelerometer/compass (LSM303DLHC), gyroscope (L3GD20), 8 user LEDs, user button, reset button, Full-Speed USB to second Mini-B USB connector, and two 25x2 male pin headers.

;STM32VLDISCOVERY

Image:STM32 LV Discovery board.jpg

  • A [https://www.st.com/en/evaluation-tools/stm32vldiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f100rb.html STM32F100RBT6] microcontroller with 24 MHz ARM Cortex-M3 core, 128 KB flash, 8 KB RAM in LQFP64 package.{{Cite web|date=2011-11-23|title=STMicroelectronics' STM32 Discovery Kit Establishes New Industry Standard for Low-Cost Tools for 32-bit Microcontrollers|url=http://www.st.com/internet/com/press_release/p3065.jsp|access-date=2022-08-22|archive-date=2011-11-23|archive-url=https://web.archive.org/web/20111123102926/http://www.st.com/internet/com/press_release/p3065.jsp|url-status=bot: unknown}}{{Cite web|date=2012-11-02|title=STMicroelectronics To Hand Out Up To 7000 Microcontroller Discovery Kits at 'embedded world' to Encourage Creativity and Nurture Development of Outstanding Embedded Applications|url=http://www.st.com/internet/com/press_release/t3136.jsp|access-date=2022-08-22|archive-date=2012-11-02|archive-url=https://web.archive.org/web/20121102010653/http://www.st.com/internet/com/press_release/t3136.jsp|url-status=bot: unknown}}
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK] debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 28x1 male pin headers.

;STM32L-DISCOVERY

File:STM32F0 Discovery (9069526462).jpg

  • A [https://www.st.com/en/evaluation-tools/32l152cdiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32l152rb.html STM32L152RBT6] microcontroller with 32 MHz ARM Cortex-M3 core, 128 KB flash (with ECC), 16 KB RAM, 4 KB EEPROM (with ECC) in LQFP64 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 24-segment LCD, touch sensors, 2 user LEDs, user button, reset button, and two 28x1 male pin headers.
  • This board is currently End-Of-Life and replaced by the 32L152CDISCOVERY board.

;STM32L152CDISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32l152cdiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32l152rc.html STM32L152RCT6] microcontroller with 32 MHz ARM Cortex-M3 core, 256 KB flash (with ECC), 32 KB RAM, 8 KB EEPROM (with ECC) in LQFP64 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 24-segment LCD, touch sensors, 2 user LEDs, user button, reset button, and two 28x1 male pin headers.

;STM32L100CDISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32l100cdiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32l100rc.html STM32L100RCT6] microcontroller with 32 MHz ARM Cortex-M3 core, 256 KB flash (with ECC), 16 KB RAM, 4 KB EEPROM (with ECC) in LQFP64 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.

;STM32F072BDISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32f072bdiscovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f072rb.html STM32F072RBT6] microcontroller with 48 MHz ARM Cortex-M0 core, 128 KB flash, 16 KB RAM (with parity) in LQFP64 package.
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, gyroscope (L3GD20), 4 user LEDs, user button, reset button, linear touch keys, Full-Speed USB to second Mini-B USB connector, and two 33x1 male pin headers.

;STM32F0DISCOVERY

  • A [https://www.st.com/en/evaluation-tools/stm32f0discovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f051r8.html STM32F051R8T6] microcontroller with 48 MHz ARM Cortex-M0 core, 64 KB flash, 8 KB RAM (with parity) in LQFP64 package.{{Cite web|date=2012-08-09|title=STMicroelectronics Enters Production with New STM32 F0 Microcontrollers Targeting Budget Applications|url=http://www.st.com/internet/com/press_release/p3296.jsp|access-date=2022-08-22|archive-date=2012-08-09|archive-url=https://web.archive.org/web/20120809215244/http://www.st.com/internet/com/press_release/p3296.jsp|url-status=bot: unknown}}
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.
  • A prototyping perfboard with 0.1-inch (2.54 mm) grid of holes is included.

;STM32F0308DISCOVERY

  • A [https://www.st.com/en/evaluation-tools/32f0308discovery.html discovery board] for [https://www.st.com/en/microcontrollers/stm32f030r8.html STM32F030R8T6] microcontroller with 48 MHz ARM Cortex-M0 core, 64 KB flash, 8 KB RAM (with parity) in LQFP64 package.{{Cite web|title=Newsroom - STMicroelectronics|url=https://www.st.com/content/st_com/en/about/media-center/press-and-news.html/page=1|access-date=2022-08-22|website=www.st.com|language=en}}
  • This board includes an integrated [https://www.st.com/en/development-tools/st-link-v2.html ST-LINK/V2] debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.
  • A prototyping perfboard with 0.1-inch (2.54 mm) grid of holes is included.

=ST Evaluation=

The following evaluation kits are sold by STMicroelectronics.{{Cite web|title=STM32 Eval Boards - STMicroelectronics|url=https://www.st.com/en/evaluation-tools/stm32-eval-boards.html|access-date=2022-08-22|website=www.st.com|language=en}}

;STM32W-RFCKIT:

  • An RF [http://www.st.com/web/catalog/tools/PF251361 evaluation board] for STM32 W-series.
  • It contains two boards, each with a STM32W108 SoC microcontroller in VFQFPN40 and VFQFPN48 packages.
  • The evaluation board has a built-in 2.4 GHz IEEE 802.15.4 transceiver and Lower MAC (so supports 802.15.4, ZigBee RF4CE, ZigBee Pro, 6LoWPAN (Contiki) wireless protocols). The SoC contains 128-Kbyte flash and 8-Kbyte RAM memory. Flash memory is upgradable too via USB. It has an ARM Serial Wire Debug (SWD) interface (Remote board) and is designed to be powered by USB or with 2 AAA batteries (Remote board). There are two user-defined LEDs (green and yellow) and five push buttons to create easy-to-use remote functions (remote board).

;STM3220G-JAVA:

A ready-to-use Java development kits for its STM32 microcontrollers. The STM3220G-JAVA Starter Kit combines an evaluation version of IS2T's MicroEJ Software Development Kit (SDK) and the STM32F2 series microcontroller evaluation board providing everything engineers need to start their projects.

MicroEJ provides extended features to create, simulate, test and deploy Java applications in embedded systems. Support for Graphical User Interface (GUI) development includes a widget library, design tools including storyboarding, and tools for customizing fonts.{{Cite web|title=STM32 Eval Boards - STMicroelectronics|url=https://www.st.com/en/evaluation-tools/stm32-eval-boards.html|access-date=2022-08-22|website=www.st.com|language=en}} STM32 microcontrollers that embed Java have a Part Number that ends with J like [https://www.st.com/en/microcontrollers/stm32f205vg.html STM32F205VGT6J].

Development tools

=ARM Cortex-M=

{{Main|List of ARM Cortex-M development tools}}

=STM32=

;Design utilities

  • Simulink, by MathWorks provides model-based design solutions to design embedded systems. The Embedded Coder Support Package for STMicroelectronics Discovery Boards and the Simulink Coder Support Package for STMicroelectronics Nucleo Boards provide parameter tuning, signal monitoring and one-click deployment of Simulink algorithms to STM32 boards with access to peripherals like ADC, PWM, GPIOs, I²C, SPI, SCI, TCP/IP, UDP, etc.

;Flash programming via USART

All STM32 microcontrollers have a ROM'ed bootloader that supports loading a binary image into its flash memory using one or more peripherals (varies by STM32 family). Since all STM32 bootloaders support loading from the USART peripheral and most boards connect the USART to RS-232 or a USB-to-UART adapter IC, thus it's a universal method to program the STM32 microcontroller. This method requires the target to have a way to enable/disable booting from the ROM'ed bootloader (i.e. jumper / switch / button).

;STM32 C/C++ software libraries

Documentation

The amount of documentation for all ARM chips can be daunting, especially for newcomers. As microprocessors have increased in capability and complexity, the documentation has grown. The total documentation for all ARM chips consists of documents from the IC manufacturer (STMicroelectronics) and documents from CPU core vendor (ARM Holdings).

A typical top-down documentation tree is: manufacturer website, manufacturer marketing slides, manufacturer datasheet for the exact physical chip, manufacturer detailed reference manual that describes common peripherals and aspects of a physical chip family, ARM core generic user guide, ARM core technical reference manual, ARM architecture reference manual that describes the instruction set(s).

;STM32 documentation tree (top to bottom):

  1. STM32 website.
  2. STM32 marketing slides.
  3. STM32 datasheet.
  4. STM32 reference manual.
  5. ARM core website.
  6. ARM core generic user guide.
  7. ARM core technical reference manual.
  8. ARM architecture reference manual.

STMicroelectronics has additional documents, such as: evaluation board user manuals, application notes, getting started guides, software library documents, errata, and more. See External Links section for links to official STM32 and ARM documents.

Part number decoding

Example:

: STM32F407VG

:* splits into STM32 F4 07 V G

:* means: F4 series, 07 subtype, 100 pin, 1024 KB flash

Decoding:

: STM32 xx ww y z

:* xx – Series family

:* ww – Subtype, differs by each series family

:* y – Package pin count

:* z – Flash memory size

{{Col-begin}}

{{Col-break|width=50%}}

class="wikitable sortable"

|+ Family [xx]{{Cite web|title=STM32 coding matrix · pavelrevak/pystlink Wiki|url=https://github.com/pavelrevak/pystlink|access-date=2022-08-22|website=GitHub|language=en}}

scope="col" | Family
code

! scope="col" | ARM
Core

! scope="col" | Max
Freq
(MHz)

! scope="col" | Max
Flash
(KB)

! scope="col" | Max
SRAM
(KB)

! scope="col" class="unsortable" | Target

F0Cortex-M04825632Mainstream
F1Cortex-M372102496Mainstream
F2Cortex-M31201024128High performance
F3Cortex-M4F7251280Mainstream
F4Cortex-M4F1802048384High performance
G0Cortex-M0+64512144Mainstream
G4Cortex-M4F170512128Mainstream
F7Cortex-M7F2162048512High performance
H7Cortex-M7F48020481024High performance
L0Cortex-M0+3219220Ultra low power
L1Cortex-M33251280Ultra low power
L4Cortex-M4F801024320Ultra low power
L4+Cortex-M4F1202048640Ultra low power
L5Cortex-M33F110512256Ultra low power
U5Cortex-M33F1602048786Ultra low power
WBCortex-M4F641024256Wireless
WLCortex-M44825664Wireless

{{Col-break|width=25%}}

class="wikitable sortable"

|+ Package pin count [y]

scope="col" | Package
code

! scope="col" | Number
of pins

A169
B208
C48
F20
G28
H40
I176
J8 or 72
K32
M81
N216
Q132
R64
T36
U63
V100
Z144

{{Col-break|width=25%}}

class="wikitable sortable"

|+ Flash size [z]

scope="col" | Flash
code

! scope="col" | Flash
size
(KB)

416
632
864
B128
Z192
C256
D384
E512
F768
G1024
H1536
I2048

{{Col-end}}

See also

References

{{Reflist}}

Further reading

{{See also|ARM Cortex-M#Further reading|l1=List of books about ARM Cortex-M}}

  • The Insider's Guide To The STM32 ARM Based Microcontroller; 2nd Edition (v1.8); Trevor Martin; Hitex; 96 pages; 2009; {{ISBN|0-9549988-8-X}}. [https://www.hitex.com/fileadmin/documents/tools/dev_tools/dt_protected/insiders-guides/stm32/isg-stm32-v18d-scr.pdf (Download)] [http://www.hitex.com/index.php?id=download-insiders-guides (Other Guides)]
  • μC/OS-III: The Real-Time Kernel for the STMicroelecronics STM32F107; 1st Edition; Jean Labrosse; Micrium; 820 pages; 2009; {{ISBN|978-0-9823375-3-0}}.
  • μC/TCP-IP: The Embedded Protocol Stack for the STMicroelectronics STM32F107; 1st Edition; Christian Légaré; Micrium; 824 pages; 2010; {{ISBN|978-0-9823375-0-9}}.