• Add bookmark
EmbeddedExpertIO
  • Home

Getting Started with STM32 Low Layer (LL): Inter-Integrated Circuit (I2C) Write to Registers

Posted 2 days ago by Husamuldeen

In this third installment of our STM32 Low-Layer (LL) I2C series, we shift from receiving data to actively configuring slave peripherals by updating the time registers on the DS3231 RTC. We will explore how to build a robust multi-byte write...

READ MORE

UART Based Sensor Emulation Part 2: Establish Communication

Posted 6 days ago by Husamuldeen

Establishing reliable bidirectional communication is the foundational step in validating the sensor emulation framework, ensuring that the master device and the emulated sensor can exchange data packets effectively. By implementing an echo...

READ MORE

Getting Started with STM32 Low Layer (LL): Inter-Integrated Circuit (I2C) Read Registers

Posted 10 days ago by Husamuldeen

For the second part of our series, we transition from bus scanning to active data retrieval by interfacing with the highly accurate DS3231 Real-Time Clock (RTC). We will break down the essential register operations and timing requirements needed...

READ MORE

UART Based Sensor Emulation Part 1: Introduction and Environment Setup

Posted 13 days ago by Husamuldeen

UART-based sensor emulation on an STM32F4 provides a cost-effective and highly controlled method to validate data processing algorithms and communication protocols without requiring the actual physical sensor hardware. This approach is essential...

READ MORE

Getting Started with STM32 Low Layer (LL): Inter-Integrated Circuit (I2C) Bus Scan

Posted 15 days ago by Husamuldeen

Mastering the I2C protocol at the register level offers unparalleled control and efficiency, especially when navigating the specialized Low-Layer (LL) drivers provided by ST. This first installment of our series walks you through the essential...

READ MORE

Getting Started with STM32 Low Layer (LL): UART Reception using DMA

Posted 28 days ago by Husamuldeen

Eliminate the CPU overhead of processing individual incoming characters by offloading variable-length UART reception entirely to the DMA controller. By pairing a circular or linear DMA stream with the UART hardware’s IDLE line interrupt...

READ MORE

STM32F407 Discovery Audio: I2S DAC

Posted June 25, 2026 by Husamuldeen

Now that the basic DMA transmission pipeline is established, the final part of this guide focuses on interfacing the STM32F407 with the onboard CS43L22 audio DAC to produce real-world audio waveforms. By configuring the DAC via $I^2C$ for control...

READ MORE

Getting Started with STM32 Low Layer (LL): UART Reception using Interrupt

Posted June 18, 2026 by Husamuldeen

Efficiently parse variable-length incoming data frames by combining UART receive interrupts with the hardware’s built-in IDLE line detection feature. This architecture uses the Read Data Register Not Empty (RXNE) interrupt to collect...

READ MORE

Getting Started with STM32 Low Layer (LL): UART Transmit Using DMA

Posted June 13, 2026 by Husamuldeen

Achieve the absolute pinnacle of microcontroller efficiency by offloading the entire UART communication workload from the CPU to the Direct Memory Access (DMA) controller. This guide details how to configure an independent DMA stream using Low...

READ MORE

STM32F407 Discovery Audio: Transmitting I2S Data using DMA

Posted June 10, 2026 by Husamuldeen

Building upon the fundamentals of polling mode, this next section transitions to using Direct Memory Access (DMA) to handle the data stream. By offloading the continuous transmission of audio samples from the CPU directly to the hardware, this...

READ MORE

Getting Started with STM32 Low Layer (LL): UART Transmit Using Interrupt

Posted June 6, 2026 by Husamuldeen

Eliminate the CPU bottlenecks caused by blocking transmission loops by shifting to an interrupt-driven UART architecture using Low Layer (LL) drivers. This guide demonstrates how to leverage the Transmit Data Register Empty (TXE) interrupt to...

READ MORE

STM32F407 Discovery Audio: Configuring and Transmitting I2S Data via Polling

Posted June 3, 2026 by Husamuldeen

The I2S (Inter-IC Sound) peripheral on the STM32F407 Discovery board provides a dedicated, high-performance synchronous communication interface designed specifically for transmitting digital audio data to external codecs and DACs. This guide...

READ MORE
123…11-2021-3031-4041-42
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