STM32Cube initialization code generator

STM32CubeMX is a graphical tool that allows a very easy configuration of STM32 microcontrollers and microprocessors, as well as the generation of the corresponding initialization C code for the Arm® Cortex®-M core or a partial Linux® Device Tree for Arm® Cortex®-A core), through a step-by-step process.

The first step consists in selecting the STMicroelectronics STM32 microcontroller or microprocessor that matches the required set of peripherals.

For microprocessors, the second step allows to configure the GPIOs and the clock setup for the whole system, and to interactively assign peripherals either to the Arm® Cortex®-M or to the Cortex®A world. Specific utilities, such as DDR configuration and tuning, make it easy to get started with STM32 microprocessors. For Cortex®-M core, the configuration includes additional steps that are exactly similar to those described for microcontrollers.

For microcontrollers and microprocessor Arm® Cortex®-M, the second step consists in configuring each required embedded software thanks to a pinout-conflict solver, a clock-tree setting helper, a power-consumption calculator, and an utility that configures the peripherals (such as GPIO or USART) and the middleware stacks (such as USB or TCP/IP).

Eventually the user launches the generation that matches the selected configuration choices. This step provides the initialization C code for the Arm® Cortex®-M, ready to be used within several development environments, or a partial Linux® device tree for the Arm® Cortex®-A.

STM32CubeMX is delivered within STM32Cube.

Key Features

  • Intuitive STM32 microcontroller and microprocessor selection
  • Rich easy-to-use graphical user interface allowing the configuration of:
    • Pinout with automatic conflict resolution
    • Peripherals and middleware functional modes with dynamic validation of parameter constraints for Arm® Cortex®-M core
    • Clock tree with dynamic validation of the configuration
    • Power sequence with estimated consumption results
  • Generation of initialization C code project, compliant with IAR™, Keil®and GCC compilers, for Arm® Cortex®-M core
  • Generation of a partial Linux® Device Tree for Arm® Cortex®-A core (STM32 microprocessors)
  • Availability as standalone software running on Windows®, Linux® and macOS® (macOS is a trademark of Apple Inc. registered in the U.S. and other countries.) operating systems, or through Eclipse plug-in

Image

×

Resources

Technical Documentation

Product Specifications
Description Version Size
DB2163 DB2163: STM32 configuration and initialization C code generation 12.0 470 KB
User Manuals
Description Version Size
UM1718 UM1718: STM32CubeMX for STM32 configuration and initialization C code generation 27.0 24 MB
Release Notes
Description Version Size
RN0094 RN0094: STM32CubeMX release 5.0.1 42.0 745 KB

Legal

License Agreement
Description Version Size
SLA0048 SLA0048: Mix Ultimate Liberty+OSS+3rd-party V1 - SOFTWARE LICENSE AGREEMENT 5.1 87 KB

Tools and Software

Development Tools
Software Development Tools
Embedded Software
MCU & MPU Embedded Software

Get Software

Part Number Software Version Marketing Status Supplier Download Previous versions
STM32CubeMX 5.0.1 Active ST
Select version

 

Support & Community
Featured Products




×