Mastering STM32

Cover of Mastering STM32, Second Edition

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.

Visit the book website

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.