STM32Cube enables a quick and easy start with any STM32 device and simplifies porting of code from one product series to another. The development platform is available for all devices in volume production, from the ultra-low-power to the very-high-performance series.
The platform comprises the STM32CubeMX graphical configurator and initialisation C-code generator, which provides wizards that help configure the pin-out, clock-tree, and peripherals, and meet constraints on power consumption. After configuration, the tool generates C initialisation code that matches the user’s choices. In addition, it can also automatically download the corresponding embedded software. This delivers a high-value service for developers by saving time normally spent configuring the microcontroller and overcoming resource conflicts. Unlike some competing tools, STM32CubeMX is not dedicated to a proprietary development environment and instead allows developers to create code for independent IDEs such as ARM/Keil MDK-ARM, IAR EWARM or GCC-based IDEs.
STM32Cube also provides embedded software packages for individual STM32 series. The latest package for STM32F1 devices has recently been added, and any future STM32 families, including the STM32 F7 series that goes into production later this year, will get STM32Cube support upon introduction.
Each embedded software package comprises a hardware abstraction layer (HAL) with fully portable APIs, checked using Grammatech CodeSonar for code quality and reliability, as well as closely integrated middleware that eliminates the complex task of assessing dependencies between individual software components. In addition, a built-in automatic update mechanism relieves the burden of checking software status.
Items of middleware include the open-source TCP/IP stack (LwIP), FreeRTOS with CMSIS-RTOS wrapper, open-source FatFS file system, ST’s USB Host and Device library, ST’s touch-sensing library and ST’s STemWin professional graphics stack. These are provided on business-friendly terms such as BSD open-source licenses, or proprietary licenses for software developed and supported by ST.
The embedded software packages come with large numbers of examples and demonstrations targeted at ST development boards including Evaluation Boards, Discovery Kits, and the latest STM32