STM32Cube frees embedded designers from MCU development constraints |
Who should attend this course?
- Developers looking for a way to optimize their current development time.
- Engineers looking to easily start or improve a design based on an STM32 MCU.
What is STM32Cube?
STM32Cube is a comprehensive software solution combining embedded software libraries, including hardware abstraction layer peripheral driver and other components, with STM32CubeMX, its graphical interface for configuring the embedded firmware. Learn more here
Benefits you will take away
- Complete understanding of STM32Cube including the graphical interface and the APIs for hardware abstraction layer
- Hands-on STM32Cube experience using an IDE such as those by Keil, IAR, SW4STM32 or TrueSTUDIO.
- A strong practical experience to start your own applications
On line course concept
- Courses are provided in Massive Open Online Course (MOOC) format with course material available online, mostly as videos complemented with exercises.
- Each course takes approximately 8 hours to complete, depending on your proficiency.
Course outline
The first part of the course focuses on using the built-in utilities (wizards) of the STM32CubeMX graphical interface to handle basic tasks to create a project:
- Selecting the appropriate STM32 MCU for your application
- Configuring the pinout and resolving conflicts
- Managing the clock tree
- Enabling and configuring MCU peripherals
- Calculating the power consumption in various modes and configurations
- Generating C initialization code
The second part is related to the STM32Cube's embedded software libraries with detailed explanations about the following components and how they are used:
- Hardware abstraction layer (HAL)
- Handles and callbacks
- Interrupts
- Direct memory access controller (DMA)
Additional material covers hands-on exercises using the GPIO, SPI, UART, timer and ADC peripherals.
All points are explained on commented presentations or hands-on exercises.
Prerequisites
- You need to have a good understanding of embedded system development and should be proficient in C programming.
- An STM32 Nucleo-64 development board with an STM32F401RE MCU (ref: NUCLEO-F401RE) is required for the hands-on exercises included in the course.
- Type A to type B miniUSB cable
- Laptop PC running Windows® 7, 8 or 10 with administrator rights and the following software installed:
- current version of Keil uVision with MCU data pack within MDK-ARM toolchain
- start the MDK-ARM application and press “Pack installer” button
- install STM32F4 family, STM32NUCLEO and CMSIS data packs - current version of SW4STM32
- current version of Atollic TrueStudio
- current version of IAR EWARM
- current version of STM32CubeMX
- STM32F4 Cube library
- STLink Driver
- current version of Keil uVision with MCU data pack within MDK-ARM toolchain