STM32CubeTM from STMicroelectronics is a free design tool and software for the company's STM32 microcontroller portfolio. The new STM32Cube development platform comprises the STM32CubeMX graphical configurator and initialization C-code generator that provides step-by-step guidance for users and a set of rich embedded-software components that save integrating software from multiple sources. The software includes a new Hardware Abstraction Layer (HAL) that simplifies porting from one STM32 device to another. By gathering all the generic software components needed for developing applications on STM32 microcontrollers into one single package, this platform eliminates the complex task of assessing dependencies between individual software components. STM32Cube provides hundreds of usage examples and an update mechanism for fast and efficient access to the latest versions of the software.
The STM32CubeMX graphical configuration tool simplifies and automates configuration and generation of STM32 initialization C code ready to be used with several development environments. STM32CubeMX is also available as an Eclipse plug-in, allowing use within Eclipse-based development environments. The tool provides an easy-to-use filter for selecting the desired STM32 device and graphical wizards to simplify configuration: the pin-out wizard assists pin assignment to avoid conflicts, embedding a powerful constraints solver; the clock-tree wizard assigns clocks and performs dynamic validation; the peripherals-and-middleware wizard aids configuration to avoid unusable settings; and the power-consumption wizard checks that the application meets the available power budget.
The new HAL, part of the STM32CubeF4 embedded software, offers a high abstraction level, hence simplifying the porting of an application from one STM32 microcontroller to another. Features include support for re-entrant APIs allowing use with an RTOS, extra function calls allowing developers to target specific peripheral features and thereby leverage the rich functionality of STM32 microcontrollers, and support for polling, interrupt, and DMA (Direct Memory Access) programming models. The HAL uses the industry-standard CodeSonar static-analysis tool, which helps ensure safe and predictable behavior of customer applications, and is distributed under a non-restrictive BSD (Berkeley Software Distribution) open-source license.
The STM32CubeMX tool and STM32CubeF4 embedded software are available directly from http://www.st.com/stm32cube .