STM32 – one family, many possibilities
Every STM32 microcontroller is based on ARM architecture and thus it provides high computational power combined with great design flexibility and low power modes of operation. Beside the core itself (which can be ARM Cortex-M3, M0, M0+, M4 or even M7), the MCU also has a broad range of built-in peripherals that influence on its performance. These are for example high-quality digital blocks (16-bit and 32-bit hardware timers with sophisticated output and synchronization features, DMA controllers, graphics controllers and hardware accelerators) and mixed-signal peripherals (including 12-bit, high speed ADC converters, 12-bit DAC converters, software-configurable operational amplifiers and fast analog comparators). Some of higher-performance devices includes also DSP co-processor and floating-point arithmetic units, allowing the developer to perform complex digital signal processing tasks according to multimedia- and measurement-related design needs (for example audio processing, digital filtering or DFT computation). STM32L1, STM32L4 and STM32L0 families are dedicated to ultra-low power applications in field of digital metering, wearable devices or battery-operated and battery-less sensor networks.
STM32 Discovery – entry level development boards
STM32 Discovery product line includes a few low-cost, easy-to-use boards for different MCUs (for example STM32L1) equipped with basic peripherals, as well as the high performance, feature-rich development platforms for multimedia-oriented applications. The good example of both types of Discovery boards are STM32F0DISCOVERY and STM32F746G Discovery. First of them is based on popular STM32F051 microcontroller and includes two buttons (reset and user button), four LED indicators (two available for user application) and a plenty of GPIO and power supply pinheaders. The second - STM32F746G – is a sophisticated evaluation board equipped with high-performance
STM32F746NGH6 MCU (216 MHz ARM Cortex-M7, 1MB of Flash memory and 340 kB of RAM), built-in external memories (128 MB Quad SPI Flash and 128 MB SDRAM) as well as a huge set of peripherals (including audio input and output, camera connector, stereo amplifier, two MEMS microphones and microSD slot). The board also contains 4,3-inch, 480 x 272 px color touch screen allowing easy development of high-level graphic applications.
STM32 Nucelo – Arduino-compatible evalboards and ready-to-use modules
If you want to start development of your devices based on STM32 microcontroller, you can also choose one of many STM32 Nucleo evaluation boards. They essentialy fall into three product lines. The first contains small form-factor modules (for example STM32 NUCLEO-F031K6) with basic peripherals, including three LEDs, reset button and micro USB port for programming and power supply. The more advanced modules like STM32 NUCLEO-F446RE also contains Arduino-compatible slots that allow use of Arudino shields in STM32 ecosystem. The most advanced evaluation boards (for example STM32 NUCLEO-F429ZI) can also include a bunch of computer-like interfaces (application USB port and Ethernet RJ45 socket) and a plenty of GPIO headers. One of the most important advantages of STM32 Nucleo boards (and also Discovery boards described previously) is a built-in ST-Link (usually ST-Link/V2), available in every single module. This allows you to immediately start your development without need of purchasing any external programmers/debuggers.