A step-by-step and growing guide to the most complete ARM Cortex-M platform, using a free and powerful development environment based on Eclipse and GCC
- Introduction to Cortex-M and STM32 microcontrollers.
- How to setup a complete and working tool-chain to develop STM32 applications on Windows, Linux and Mac OSX.
- How to use STM32CubeMX to generate application skeleton, and how to import it inside the tool-chain.
- Introduction to OpenOCD and to the debugging of STM32 applications.
- ARM semihosting.
- GPIO management.
- NVIC controller.
- UART peripheral.
- DMA controller.
- STM32 clock tree and its configuration.
- Basic, general purpose and advanced STM32 timers.
- ADC peripheral.
- DAC controller.
- I2C bus and protocol.
- SPI bus.
- CRC peripheral.
- IWDT and WWDT timers.
- Power management.
- The memory layout of an STM32 application and linker scripts.
- Flash memory management and the role of the ART™ Accelerator.
- The booting process in STM32 microcontrollers and how to write a custom bootloader.
- FreeRTOS and the tickless low-power mode.
- Advanced debugging techniques and how to use SEGGER tools to debug STM32 MCUs.
- How to design a custom board using an STM32 MCU.
You can download the complete table of contents from here.
When finished, the book will also cover these topics:
- RTC clock.
- FAT Filesystem management.
- Develop IoT applications with the W5500 Ethernet processor.
The book is addressed both to professionals and to fans of this platform, like hobbyists and students. The book examples are based on the sixteen Nucleo-64 boards from ST.