Mastering STM32

A step-by-step guide to the STM32 platform
Mastering STM32 is my personal editorial project. It began with the STM32 tutorials I published on this blog, while I was learning how to build a reliable development toolchain for embedded applications.
Over time, I realised that a blog was not the right format for such a broad subject. In 2022 I published the second edition, based on the official STM32CubeIDE development environment and the STM32Cube HAL.
The second edition contains twenty-eight chapters and around 900 pages. It covers:
- Cortex-M architecture and STM32 microcontrollers.
- Setting up STM32CubeIDE on Windows, Linux and macOS.
- STM32CubeMX and application skeleton generation.
- Debugging STM32 applications.
- GPIO, NVIC, UART and DMA.
- The STM32 clock tree and its configuration.
- Basic, general-purpose and advanced timers.
- ADC, DAC, I²C, SPI and CRC.
- IWDG, WWDG, RTC and power management.
- Memory layout, linker scripts, Flash memory and the ART Accelerator.
- Booting STM32 microcontrollers and writing a custom bootloader.
- FreeRTOS 10.x and tickless low-power mode.
- Advanced debugging with SEGGER tools.
- FatFs, Ethernet applications with W5500 and USB 2.0.
- Designing a custom board with an STM32 MCU.
Contents and preview
You can download the complete table of contents as a PDF.
The book is for both professionals and enthusiasts, including hobbyists and students. Its examples use several STM32 Nucleo-64 boards from ST.
A substantial free preview is available on the Leanpub book page. It includes the steps needed to set up the development toolchain.