• Add bookmark
EmbeddedExpertIO
  • Home

Working with STM32 and I2C: Reading Multiple Bytes

Posted November 4, 2021 by Husamuldeen

In the pervious guid (here), we took a look how to write/read single byte using I2C and the slave device is DS3231 In this guide, we shall see how to read multiple byte of DS3231 which they are seconds, minutes and hours and display them on the...

READ MORE

Working with STM32 and Motors part 2 : DC Motors

Posted November 1, 2021 by Husamuldeen

In the pervious guide (here), we took a look at how to control stepper motor. This guide is about DC motor interfacing with STM32F411 Nucleo-64. We will learn to control the speed of a DC motor using a pulse width modulation module (PWM) of...

READ MORE

Changing core frequency of STM32F767 using registers only

Posted October 28, 2021 by Husamuldeen

In this guide, we shall use registers to change the core frequency from default 16MHz to 216MHz (maximum for F767ZIT). We shall use CubeMX to determine the values required to reach the 216MHz operation. 1. Getting required settings from CubeMX We...

READ MORE

Working with STM32 and I2C: Writing a single Byte

Posted October 25, 2021 by Husamuldeen

In the pervious guide (from here), we took a look at DS3231 hardware and we read the second register and display the seconds on the terminal through UART. In this guide, we shall see how to write a single byte to a specific register. In this...

READ MORE
Getting started with STM32F7: Blinking LED

Getting started with STM32F7: Blinking LED

Posted October 21, 2021 by Husamuldeen

In this new guide series, we shall start developing peripheral for ARM Cortex M7 based MCU with STM32F7 specially STM32F767Zi Nucelo-144. In this guide, we will cover the following: Getting the documents Developing bare metal GPIO output Demo 1...

READ MORE

Working with STM32 and I2C: Reading single Byte

Posted October 19, 2021 by Husamuldeen

In the previous guide (here), we saw how to use I2C to scan the bus for the slave devices address. In this guide, we shall see how to read a single byte using I. In this guide, we shall use DS3231. In this guide, we shall cover the following...

READ MORE

Working with STM32 and Motors part 1 : Stepper Motor

Posted October 14, 2021 by Husamuldeen

In this guide,, we will learn to interface a stepper motor with STM32F411RE Nucleo-64. There are many options available for stepper motors. But in this tutorial, we will use an inexpensive 28BYJ-48 stepper motor for interfacing with...

READ MORE

Working with SPI displays and STM32: Driving ST7735

Posted October 11, 2021 by Husamuldeen

In the pervious guide, we took a look at how to send data over SPI (from here). In this guide, we shall use SPI to drive a lcd and display some variables on it. In this guide, we will need the following topics: SPI configuration : here Encoder...

READ MORE

Working with STM32 and ultrasonic: using timer and interrupt to measure the distance

Posted October 7, 2021 by Husamuldeen

In the previous guide(here), we looked at the operation principle of how ultrasonic works and we used very crude code to measure the distance. In this guide, we shall use external GPIO interrupt and timer 2 of the STM32F4 to measure the distance...

READ MORE

Working with STM32 and SPI : Send bytes using DMA

Posted October 4, 2021 by Husamuldeen

In the previous guide (here), we discussed how to send a single character using SPI in polling mode. This method will decrease the CPU performance since the CPU has to wait for each time before sending the character. In this guide, we shall...

READ MORE

Working with STM32 and SPI (Serial Peripheral Interface): Send a byte

Posted September 30, 2021 by Husamuldeen

In this guide, we shall discuss what is SPI and how transmit single byte over SPI. In this guide, we will cover the following: What is SPI SPI pin setup SPI initialize SPI transmite function Result 1. What is SPI SPI, which stands for Serial...

READ MORE

Changing core frequency of STM32F411 using registers only

Posted September 27, 2021 by Husamuldeen

In this guide, we shall use registers to change the core frequency from default 16MHz to 100MHz (maximum for F411RE). We shall use both keil uVision and STM32CubeIDE to change the core frequency to 100MHz. 1. Open CubMX After you select your MCU...

READ MORE
1-1011-2021-30…38394041-43
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
  • H.S.Raghavendra Rao on Emulating UART Part 2: Sending Data
  • 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
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