AN4989 Rev 3
21/118
AN4989
STM32 ecosystem outlines
117
2.2.1 STM32CubeMX
Figure 12. STM32CubeMX Configure and code generation
STM32CubeMX is a graphical tool that allows to easily configure STM32 microcontrollers
and to generate the corresponding initialization C code through a step-by-step process.
The first step consists in selecting the STM32 microcontroller that matches the required set
of peripherals. MCU can be selected as stand-alone for custom PCB (MCU Selector) or pre-
integrated into one of STMicroelectronics hardware kit (Board Selector)
In the second step, the user must configure each required embedded software thanks to a
pinout-conflict solver, a clock-tree setting helper, a power-consumption calculator, and a
utility performing MCU peripheral configuration (GPIO, USART, and others) and middleware
stacks (USB, TCP/IP, and others).
Finally, the user launches the generation of the initialization C code based on the selected
configuration. This code is ready to be used within several development environments. The
user code is kept at the next code generation.
Key features
•
Intuitive STM32 microcontroller selection
•
Rich graphical user interface configuration:
–
Pinout with automatic conflict resolution
–
Clock tree with dynamic validation of configuration
–
Peripherals and middleware functional modes and initialization with dynamic
validation of parameter constraints
–
Power consumption calculation for a user-defined application sequence
•
C code project generation covering STM32 microcontroller initialization compliant with
IAR Systems
®
, Keil
®
and GCC compilers.
•
Available as a standalone software running on Windows
®
, Linux
®
, and macOS
®
operating systems, or through Eclipse plug-in