STM32 Beginner Course
What you'll learn
- stm32 with the HAL library
- stm32 gpio, interrupt, pwm, timer, dma, uart, usb, freertos, spi, i2c
- Basic understand in the C programming language
Hello and welcome to the stm32 course!
My name is Johan Svensson and I am working as an embedded developer. I’ve created this course with the aim to educate people about the stm32 products and it’s development environment.
If you have been using the Arduino products and maybe outgrown the development environment it offers or the microcontrollers, this course might be something for you. Stm32 has a wide range of microcontrollers which can be used for many types of applications, and stm32cubeide which is based on eclipse, is a very powerful integrated development environment and it can be used for many programming languages, as well as C and C++. By the way, Eclipse is my preferred IDE for doing development.
During the course we will cover the common peripherals, such as:
General Purpose Input Output (GPIO)
Direct Memory Access (DMA)
Pulse Width Modulation (PWM)
Analog to digital converter (ADC)
universal asynchronous receiver-transmitter (UART)
USB Virtual COM Port
a real time operating system called FreeRTOS
Serial Peripheral Interface (SPI)
Inter-Integrated Circuit (I2C)
We will use the stm32cubemx to configure the peripherals. We will program the microcontroller using the C programming language together with the STM32 HAL libraries.
So, who am I? I have a bachelor degree in Electrical Engineering from KTH and I have been working as an embedded developer since 2017. The two computer languages I’ve been using mostly, are C and C++, and scripting languages in Linux. I’ve also worked as a Unix and Windows administrator.
If you have any questions, feel free to contact me. I’ll try to answer your questions as best I can.
Who this course is for:
- Embedded developers
- curious about embedded system
Working as an embedded developer in Linux, writing code in C and C++.
Programming languages: C, C++, Java, Android, HTML, Matlab, Assembler, VHDL, SQL, PHP, XML, Perl, Bash.
Other: CI/CD, Gerrit, Jenkins. Used to work as an administrator in Windows och Linux, managing both clients and servers.
BSc Electrical engineering, KTH Royal Institute of Technology
C Developer (Ericsson)
C++ Developer (Atlas Copco)