• Add bookmark
EmbeddedExpertIO
  • Home

STM32 UART Part 8.1: 1- Wire DS18B20 Temperature Sensor – Introduction and setup

Posted October 15, 2025 by Husamuldeen

In this two-part guide, we explore how to interface the DS18B20 temperature sensor with an STM32 microcontrollerusing the 1-Wire communication protocol. The first part introduces the fundamentals of the 1-Wire protocol, explains how the DS18B20...

READ MORE

STM32 UART Part 7: 1- Wire Protocol Receiving Data

Posted October 10, 2025 by Husamuldeen

In this part, we dive into how the STM32 receives data from a 1-Wire sensor, interpreting the precise timing signals that represent logical bits. Understanding the reception phase is crucial, as it ensures accurate communication and reliable data...

READ MORE

SPI Based Sensor Emulation Part 1: Introduction

Posted October 7, 2025 by Husamuldeen

In this guide, we demonstrate how to emulate an SPI-based sensor using two STM32 Nucleo-64 boards—one configured as the SPI master and the other as an emulated SPI sensor. In Part 1, we will discuss the importance of this setup and explain how to...

READ MORE

STM32 UART Part 6: 1- Wire Protocol Sending Data

Posted October 2, 2025 by Husamuldeen

The 1-Wire protocol is a simple, low-speed communication standard developed by Dallas Semiconductor (Maxim) that uses just a single data line and ground for both power and data exchange. It enables multiple devices, such as sensors and memory...

READ MORE

Working with STM32 and E-Ink Display Part 1: Introduction and Environment Setup

Posted September 30, 2025 by Husamuldeen

The 2.15-inch E-Paper display is a low-power, high-contrast screen that mimics the appearance of printed paper, making it ideal for battery-powered and sunlight-readable applications. In this guide, we will explore how to interface it with an...

READ MORE

Porting U8G2 Graphics Library to STM32 Part5: Nokia 5110 GLCD PCD8544

Posted September 25, 2025 by Husamuldeen

This guide demonstrates how to interface a Nokia 5110 display based on the PCD8544 controller with an STM32 microcontroller using the U8G2 graphics library. We will cover hardware setup, library integration, and display initialization to build a...

READ MORE

SSD1331 Color OLED with STM32 Part 2: Initialization and Draw Single Pixel

Posted September 24, 2025 by Husamuldeen

In this guide, we will focus on the firmware side by initializing the SSD1331 controller and preparing it for operation. Once initialized, we’ll implement a simple routine to draw a single pixel on the OLED display as the foundation for more...

READ MORE

Emulating I2C Sensors Part 5: Control Rate of the Conversion

Posted September 20, 2025 by Husamuldeen

In this part of the guide, we will extend the emulated sensor by introducing control over the rate of its internal ADC conversions. By adjusting this rate, the slave STM32 can mimic real-world sensors that allow the master to configure sampling...

READ MORE

STM32 UART Part 5: Receive Unknown Length Using DMA

Posted September 17, 2025 by Husamuldeen

Using DMA in normal (non-circular) mode with the IDLE line interrupt turns UART reception into a smart, event-driven system. Instead of blindly filling buffers, the DMA captures bursts of unknown-length data in one shot, and...

READ MORE

Porting U8G2 Graphics Library to STM32 Part4: ST7920 GCLD 128×64

Posted September 13, 2025 by Husamuldeen

This guide demonstrates how to interface a GLCD12864 display based on the ST7920 controller with an STM32 microcontroller using the U8G2 graphics library. We will cover hardware setup, library integration, and display initialization to build a...

READ MORE

SSD1331 Color OLED with STM32 Part 1: Introduction and Environment Setup

Posted September 11, 2025 by Husamuldeen

This guide walks you through working with the SSD1336 SPI color OLED display using STM32 MCUs. In part one, we’ll cover the SSD1331 controller basics, environment setup, and hardware connections to get started. In this guide, we shall cover the...

READ MORE

STM32 UART Part 4: Receiving Unknown Length of Data

Posted September 6, 2025 by Husamuldeen

In this part of our UART guide series, we will explore how to receive data of unknown length using interrupts triggered on each incoming character.This approach allows the STM32 to handle variable-length messages efficiently, reacting in real...

READ MORE
…45678…11-2021-3031-4041-41
Categories
  • Data Structures
  • Deep Learning
  • Embedded Systems
  • LCD
  • Peripheral Drivers
  • State Machine
  • State Machines
  • STM32
  • TM4C123
  • Uncategorized

Get Our #1 Embedded Systems Bestseller on Amazon!

✅ Master Embedded Systems – Decode datasheets & build peripheral drivers from scratch.

✅ Hands-On Firmware Development – Work with GPIO, UART, SPI, I2C, ADC, DMA, and more.

✅ No More Blind Copying – Understand every line of code for real expertise.

✅ Advance Your Career – Gain confidence & independence in firmware development.

Join the EmbeddedExpertIO School

EmbeddedExpertIO School
Secure Boot From Ground Up™

Secure Boot From Ground Up™

Build a production-minded Secure Boot chain on STM32, including signing workflows, flash layout, policy enforcement, rollback control, and deterministic recovery.

$150.78
Zephyr OS from Ground Up™

Zephyr OS from Ground Up™

Hands-On Zephyr OS: Real-Time Firmware Development on STM32

$129.78
Mastering the CAN Bus from Ground Up™

Mastering the CAN Bus from Ground Up™

Navigating the Intricacies of the Controller Area Network(CAN)

$79.78
Advanced Digital Signal Processing on ARM Processors

Advanced Digital Signal Processing on ARM Processors

Filter Design, FFT, Realtime DSP, CMSIS-DSP

$129.99
Safety-Critical Embedded C++ Firmware Development

Safety-Critical Embedded C++ Firmware Development

Designing Deterministic, Standards-Compliant Firmware for Automotive, Aerospace and Industrial Applications with MISRA C++, AUTOSAR, DO-178C, ISO 26262, and IEC 61508

$129.78
Embedded C Test-Driven Development

Embedded C Test-Driven Development

Hands-On Guide to Embedded Test-Driven Development (TDD) for Professional Embedded C Developers

$99.78
Recent Comments
  • Husamuldeen on Working with STM32 and E-Ink Display Part 1: Introduction and Environment Setup
  • Marc on Working with STM32 and E-Ink Display Part 1: Introduction and Environment Setup
  • Husamuldeen on Getting Started with STM32F103: ADC Multi Channel Continuous Conversion Mode with DMA
  • Jose on Getting Started with STM32F103: ADC Multi Channel Continuous Conversion Mode with DMA
  • Husamuldeen on Working with STM32 and Acceleration Sensor: ADXL345 in SPI mode Part 2
Archives
Advanced Embedded Object-Oriented Programming in C++

Advanced Embedded Object-Oriented Programming in C++

Mastering C++ Object-Oriented Programming for Microcontroller-Based Firmware Development

$129.78

 All Rights Reserved

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Learn more here
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT