Introduction to STM32CubeMX

STM32CubeMX official.png

1. What is STM32CubeMX?

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

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

For microprocessors, the second step configures the GPIOs, performs the clock setup for the whole system, and interactively assigns the 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 the Cortex®-M core, the configuration includes additional steps that are identical to those described for microcontrollers.

For microcontrollers and microprocessor based on the Arm® Cortex®-M core, 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 a 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 generates the C initialization code for the Arm® Cortex®-M core, ready to be used within several development environments, or a partial Linux® device tree for the Arm® Cortex®-A.

STM32CubeMX is delivered within STM32Cube Packages.

2. Getting started with STM32CubeMX

STM32CubeMX tool

3. Videos related to STM32CubeMX

pc videol.png

Getting started with STM32CubeMX

pc videol.png

How to build a “Blink LED” project from STM32CubeMX for ST/Atollic TrueSTUDIO® for STM32™

pc videol.png

STM32G0: Create a USB Power Delivery sink application


4. STMicroelectronics Resources

STM32CubeMX for STM32 configuration and initialization C code generation UM1718
Release note RN0094