January 2019 UM1891 Rev 9 1/27
1
UM1891
User manual
Getting started with STM32CubeF7 MCU Package
for STM32F7 Series
Introduction
STMCubeis an STMicroelectronics original initiative to make developers’ life easier by
reducing development effort, time and cost. STM32Cube is the implementation of
STMCubethat covers the whole STM32 portfolio.
STM32Cube includes:
STM32CubeMX, a graphical software configuration tool that allows the generation of C
initialization code using graphical wizards
A comprehensive MCU Package, delivered per series (such as STM32CubeF7 for
STM32F7 Series):
The STM32Cube HAL, an STM32 abstraction layer embedded software, ensuring the
maximum portability across the STM32 portfolio.
Low-layer APIs (LL) offering a fast light-weight expert-oriented layer which is closer to
the hardware than the HAL. The LL APIs are available only for a set of peripherals.
A consistent set of middleware components such as RTOS, USB, TCP/IP and
graphics.
All embedded software utilities, delivered with a full set of examples.
This user manual describes how to get started with the STM32CubeF7 MCU Package.
Section 1 describes the main features of the STM32CubeF7 firmware, part of the
STMCubeinitiative.
Section 2 and Section 3 provide an overview of the STM32CubeF7 architecture and MCU
Package structure.
www.st.com
Contents UM1891
2/27 UM1891 Rev 9
Contents
1 STM32CubeF7 main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 STM32CubeF7 architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 Level 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Board support package (BSP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.2 Hardware abstraction layer (HAL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.3 Basic peripheral usage examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.4 Low layer (LL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Level 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 Middleware components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.2 Examples based on the middleware components . . . . . . . . . . . . . . . . . 11
2.3 Level 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
3 STM32CubeF7 MCU Package overview . . . . . . . . . . . . . . . . . . . . . . . . 12
3.1 Supported STM32F7 Series devices and hardware . . . . . . . . . . . . . . . . . 12
3.2 MCU Package overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Getting started with STM32CubeF7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.1 Running your first example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2 Developing your own application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.1 HAL application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.2 LL application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3 Using STM32CubeMX to generate the initialization C code . . . . . . . . . . 21
4.4 Getting STM32CubeF7 release updates . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.4.1 Installing and running the STM32CubeUpdater program . . . . . . . . . . . 21
5 FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
6 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25