Fundamentals of Four-Line SPI Communication and Daisy Chain Configuration

Formatting | Last BugThe main content shared today is derived from ADI’s SPI knowledge study. SPI is one of the most commonly used communication methods in embedded development. However, most embedded software engineers often focus more on upper-layer software development and tend to overlook some underlying signal formats. When communication issues arise, it can be … Read more

House in San Nazzaro by Wespi de Meuron Romeo

The residential project in San Nazzaro, Switzerland, designed by Wespi de Meuron Romeo architects, showcases a topographical approach to refined architectural design strategies.The project is located on an irregular polygonal plot in the Ticino region (with a maximum elevation difference of 4.7 meters). Under strict setback requirements (≥3m from the street, ≥2.5m from the hillside), … Read more

An In-Depth Look at the SPI Communication Protocol and Practical Applications with STM32 (W25Q128 Driver) – Theoretical Part

1. SPI Communication Protocol: The High-Speed Dialogue of Electronic Devices SPI (Serial Peripheral Interface) is a commonly used synchronous serial communication protocol between electronic devices. Due to its high speed and full-duplex characteristics, it is widely used for communication with peripherals such as memory and sensors. 1.1 Basic Principles (Four-Wire Interaction) SCK: Clock signal line … Read more

A Simple Analysis of the Linux SPI Control Layer

Introduction I previously shared the control layer for I2C and mentioned that I would update the SPI section shortly. However, I was too tired and didn’t get around to it, so I apologize for the delay, haha. The SPI protocol is much simpler than I2C, but I find the software handling to be more complex … Read more

Configuring SPI in AUTOSAR MCAL for NXP S32K148 Microcontroller

This article provides a detailed explanation of how to configure the SPI (Serial Peripheral Interface) module in the MCAL (Microcontroller Abstraction Layer) for the NXP S32K148 microcontroller using the EB Tresos Studio tool. It includes preparation steps, configuration procedures, code generation, and the complete process of integration and debugging in S32 Design Studio (S32DS), offering … Read more

Understanding the Simplicity of SPI Design for Serial Peripheral Interfaces

1. Introduction to Serial Peripheral Interface (SPI)The SPI interface (Serial Peripheral Interface) is a widely used high-speed, full-duplex, synchronous serial communication protocol between microcontrollers and peripheral devices.2. Main Features of SPIIt supports master-slave operation in both full-duplex and half-duplex modes; 16-bit width with independent transmit and receive buffers;8-bit or 16-bit data frame formats;Data bit order … Read more

Exploring the SPI Bus

“A detailed explanation of the Serial Peripheral Interface and its communication applications with memory, displays, Wi-Fi modules, and SD cards.” In a previous article, I explored the astonishing convenience of interfacing modern OLED displays with bare-metal microcontrollers. My point is simple: in most embedded applications, using a complete Linux SoC platform (like Raspberry Pi) is … Read more

SPI Communication (STM32 vs GD32)

This article summarizes the learning process of STM32 and GD32, and I hope it serves as a reference for you. 1. Characteristics of SPI Communication SPI is a full-duplex, synchronous, serial communication protocol. Full-duplex: Simultaneous data transmission and reception (Half-duplex transmits and receives data in a time-shared manner) Synchronous: All tasks must be completed before … Read more

Comparison and Analysis of SPI Mechanism and Spring Boot AutoConfiguration

1. Revolutionary Improvement in Architecture Efficiency 1.1 Significant Increase in Class Loading Efficiency Spring Boot 2.7 introduces <span>AutoConfiguration.imports</span> which adopts manifest-based configuration loading, compared to the traditional SPI mechanism: Traditional SPI scan path: META-INF/services/** Spring Boot new solution: META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports By using precise configuration manifest indexing, it reduces classpath scanning operations by 90%. Actual data shows … Read more

When Not to Use I2C

I2C, as the most convenient and simplest onboard communication method, has certain scenarios where it is not suitable, and there are timing considerations to be aware of. Hardware Interface • Simple hardware interface with only two wires • SCL (Serial Clock) / SDA (Serial Data) • Low communication speed and low communication requirements • Fast: … Read more