STM32CubeMX primarily uses and generates C code (via HAL or LL libraries) for STM32 microcontroller configuration. While it does not natively generate C++ structure, it is fully compatible with C++ development within STM32CubeIDE, which supports GNU C/C++. It runs as a Java-based desktop application on Windows, Linux, and macOS.
Language Support: STM32CubeMX generates initialization code in C, but you can select C++ when creating a project in STM32CubeIDE.
Python: While not used directly in the GUI, Python tools like stm32pio can automate the interaction between PlatformIO and STM32CubeMX projects.
Alternative Environment: STM32Cube for VS Code is also available for C/C++ development.
MicroPython: MicroPython is supported on STM32 through separate firmware, not directly generated by the CubeMX configuration tool.
In summary, STM32CubeMX generates C, but works natively with C++ in STM32CubeIDE.
Next-Gen STM32 MCUs Whitepaper
Deliver unmatched efficiency, reliability, scalability for next-gen high-performance MCUs.
Sponsored
STMicroelectronics