STM32 Timer Encoder Mode: position and velocity estimation encoder stm32 stm32 timer Oct 13, 2025

This article aims to deliver concise yet complete guidance on reading encoders using STM32 Timer Encoder Mode. First, I will explain how encoders operate. Then, we will discuss how to configure the ti...

Continue Reading...
STM32 Flash memory to store data permanently flash memory stm32 Oct 13, 2025

Imagine, you are recording a sensor and storing it using some variables in your code. At some point, BOOM, the microcontroller is disconnected from a power supply and you lose the recorded data. Once ...

Continue Reading...
Attitude estimation using IMU and quaternions imu quaternions stm32 Oct 13, 2025

Knowing the relation between IMU and quaternions is vital in designing unmanned aerial vehicles (UAVs) to compute the orientation in 3D space. The idea is to apply Inertial Measurement Unit (IMU) sens...

Continue Reading...
STM32 Timer Introduction stm32 timer Oct 13, 2025

The timer is an essential peripheral in microcontrollers. It allows tracking time, generating digital signals, periodically executing some code, and many other things. At first glance, notions of cloc...

Continue Reading...
STM32 UART: Polling and DMA modes using HAL API stm32 uart Oct 13, 2025

 UART, an acronym for Universal Synchronous/Asynchronous Receiver Transmitter, stands as one of the oldest communication protocols. Besides that, in contemporary applications, UART plays an important ...

Continue Reading...
Full Guide on FMC STM32:SDRAM Integration sdram stm32 Oct 13, 2025

While STM32 microcontrollers offer enough RAM for various embedded applications, there are scenarios—such as image processing—where additional memory is required. In these cases, having an extra memor...

Continue Reading...
STM32 PWM Input Mode pwm stm32 Oct 13, 2025

In robotic and embedded programming applications, it is quite important to not only generate but also read PWM signals. A vivid example of it is working with RC Joysticks receivers which became widesp...

Continue Reading...
STM32 Timer Interrupt using CubeMx and HAL API stm32 timer Oct 13, 2025

Welcome to an exploration of STM32 Timer Interrupts—a fundamental aspect of embedded programming. In the realm of microcontrollers, Timer Interrupts stand as a vital tool, enabling the execution of co...

Continue Reading...
STM32: PWM Generation using HAL API stm32-pwm Oct 13, 2025

Pulse-width-modulation (PWM) is found in wide electrical engineering applications, from generating sine signals to transmitting data. This article aims to introduce a PWM signal in general and show ho...

Continue Reading...
STM32 ADC Programming in Polling, Interrupt, and DMA modes adc stm32 Oct 13, 2025

Reading analog signals is essential in many embedded programming applications. Therefore, modern microcontrollers always contain analog-to-digital converters(ADC), and STM32 MCUS is no exception. STM3...

Continue Reading...
STM32 Analog watchdog: ADC Configuration and Interrupt Implementation adc stm32 watchdog Oct 13, 2025

This article aims to provide thorough guidance on implementing the STM32 analog watchdog using the STM32CubeIde. First, I will explain the general concept of an analog watchdog and show you how to con...

Continue Reading...
STM32 SPI Programming: Theory, Configuration, and Example spi stm32 Oct 13, 2025

Serial Peripheral Interface (SPI) is a widely used synchronous communication protocol for connecting microcontrollers with peripheral devices such as sensors, displays, memory, and communication modul...

Continue Reading...
STM32 DAC Complete Guide: Theory, Configuration, and Example dac stm32 Oct 13, 2025

Digital-to-Analog Converters (DACs) are essential peripherals in embedded systems, enabling microcontrollers to generate analog signals from digital values. In STM32 MCUs, the STM32 DAC peripheral all...

Continue Reading...
PID implementation in C and Motor Control Example pid robotics Oct 13, 2025

Proportional-Integral-Derivative (PID) control is one of embedded systems' most widely used control algorithms, particularly for motor control applications. Whether maintaining a set speed, achieving ...

Continue Reading...
Self Balancing Robot: How to Build? balancing robot projects stm32 Oct 13, 2025

Building a self-balancing robot is an excellent starting point for anyone exploring robotics and embedded systems, as it introduces key concepts such as sensor integration, motor control, and real-tim...

Continue Reading...
STM32 Projects from Basic to Advanced robotics stm32 projects Oct 13, 2025

When I first started working with STM32 microcontrollers, I had no idea how much I would learn along the way. From my first simple experiments to designing full-fledged control systems, each project h...

Continue Reading...
STM32 Drone Flight Controller from scratch? You can do it drone flight controller projects robotics stm32 Oct 13, 2025

 If you are looking for an interesting and advanced project in the STM32 Programming, not just "LED Blink", developing the code for the STM32 Drone Flight Controller could definitely excite you. It in...

Continue Reading...
STM32 CAN Interface can stm32 Oct 13, 2025

Considering the growing interest in the STM32 CAN Peripheral in embedded applications, this article aims to explain the main features of the protocol and provide comprehensive information on the topic...

Continue Reading...
STM32 CAN Tutorial P2, STM32CubeMx Configuration can stm32 Oct 13, 2025

After passing the tedious theoretical part of the CAN journey, we finally cover the practical aspects of the CAN Interface. In this part of the tutorial, we will configure the STM32 CAN Peripheral and...

Continue Reading...
STM32 MPU6050 interface using I2C imu stm32 Oct 13, 2025

This article explains how to communicate with a widely used Internal Measurement Unit (IMU) sensor MPU6050 using STM32 MCU. We will use STM32CubeMx along with STM32 HAL API to program the microcontrol...

Continue Reading...
STM32 printf function printf tm32 Oct 13, 2025

In C programming, we utilize a standard printf function to print some info on the console. This function requires including the stdint.h file to your project and nothing else. However, when it comes t...

Continue Reading...