STM32 MOOCs (Massive Open Online Courses)

Moving from 8 to 32 bits workshop MOOC

Moving from 8 to 32 bits workshop - first steps in STM32

Coding your first STM32 microcontroller

Based on our "Moving from 8 to 32 bit" workshop, this online course guides you step-by-step into the world of programming STM32 microcontrollers, whether you come from an 8-bit environment or if you are just getting started.

It covers all the STM32 hardware and software development tools available to help reduce design time and improve your application's efficiency.

You will discover the different coding methods starting from assembly language (useful for debugging), using C with direct register access (to minimize code usage) and the advantages of our STM32CubeMX and low-layer API libraries which can speed up the development process.

Each step includes hands on exercises using the Keil uVision toolchain and our STM32 Nucleo-64 development board with STM32F072RB MCU (NUCLEO-F072RB).

Who should attend this course?

  • Engineers interested in the basics of assembly language coding and the STM32 startup process
  • Engineers looking to learn how to easily program STM32 registers
  • Engineers interested in low-layer APIs and their integration with our STM32CubeMX tool

Benefits you will take away

  • Setting up an STM32 development environment using STM32CubeMX and the MDK-ARM toolchain
  • Understanding the startup process for STM32 microcontrollers
  • Using the STM32Cube low-layer API and HAL libraries
  • Practical experience with real-life examples

Online course concept

  • Courses are provided in MOOC format with course material available online, mostly as videos complemented with exercises.
  • The course takes approximately 4 hours to complete, depending on your proficiency.

Course outline

  • Technical overview of STM32 development ecosystem
  • Getting started with STM32 development boards and associated software
  • How to access STM32 registers to develop your application
  • Introduction to STM32CubeMX, HAL and low-layer libraries
  • Guidelines for developing your application using STM32CubeMX and low-layer libraries


  • You will need the STM32F072 Nucleo development kit (NUCLEO-FO72RB)
  • One mini-USB cable 
  • Laptop PC running Windows® 7, 8 or 10 with administrator rights and the following software installed:
    • STM32 ST-LINK utility (at least version 4.0.0)
    • STM32CubeMX graphical software configuration tool
    • STM32F0 Cube library
    • Any terminal application
    • Keil uVision toolchain with MCU data pack within MDK-ARM toolchain
      - start the MDK-ARM application and press “Pack installer” button
      - install STM32F0 family, STM32NUCLEO and CMSIS data packs.