Empowering Embedded System Communication Protocols with C++

Empowering Embedded System Communication Protocols with C++

The “Marriage” of Embedded Systems and Communication Protocols In today’s wave of digitalization, embedded systems are like a magical “behind-the-scenes hero,” quietly penetrating every aspect of our lives. When you drive a car, the embedded system in the engine control system accurately adjusts fuel injection and ignition timing, ensuring efficient and stable power output; the … Read more

FMEDA Fault Injection Validation of SPI Safety Architecture

FMEDA Fault Injection Validation of SPI Safety Architecture

For more information about meetings and live classes, please inquire via WeChat “NewCarRen”. Abstract In recent years, the integration of advanced technologies in electric vehicles (EVs) has been increasing, making it crucial to assess the risks associated with the deployed technologies. Functional safety is necessary for automobiles to ensure human life safety. The Battery Management … Read more

Logic Analyzers: A Budget-Friendly Solution for Hobbyists

Logic Analyzers: A Budget-Friendly Solution for Hobbyists

Recently, I was debugging an OLED display, and I just couldn’t get it to communicate correctly, which was very frustrating. So, I casually searched on eBay for a logic analyzer, planning to buy a cheap one to use. The most common item on eBay was this one: 8 channels, 24MHz maximum sampling rate, priced around … Read more

The Evolution of Logic Analyzers: Past and Present

The Evolution of Logic Analyzers: Past and Present

A logic analyzer is an instrument used to simultaneously capture, display, and measure multiple electronic signals in digital circuits. Logic analyzers can show the relationships and timing between many different signals in digital systems and are often capable of analyzing digital communication protocols such as I2C, SPI, and serial. Therefore, logic analyzers are the best … Read more

Real-Time Logic Analyzer for All SPI Communications – SPIDriver Experience

Real-Time Logic Analyzer for All SPI Communications - SPIDriver Experience

SPIDriver is an easy-to-use tool for controlling SPI devices, compatible with Windows, Mac, and Linux systems. It features a built-in color screen that can display all SPI communications in real-time, using a standard FTDI USB serial chip to communicate with the PC, eliminating the need for special drivers. The SPIDriver evaluation board includes 3.3 V … Read more

STM32 BSP LPSPI Library Implementation

STM32 BSP LPSPI Library Implementation

Previously, I used the RT1052 development board, but now STM32 is obviously more popular among everyone. Therefore, I am providing this C file for everyone to benefit from the driver I wrote earlier. #include "bsp_lpspi.h" SPI_HandleTypeDef SpiHandle; void Spi_delay(uint32_t count){ volatile uint32_t i = 0; for (i = 0; i < count; ++i) { __asm("NOP"); … Read more

History and Future of RISC-V

History and Future of RISC-V

In 2010, the Berkeley research team aimed to design a CPU. However, Intel’s licensing for x86 was very strict, ARM’s instruction set licensing was expensive, and MIPS, SPARC, and Open Power also required their respective company licenses. With limited options, the Berkeley research team decided to start from scratch to design a new instruction set. … Read more

Common Bus Types Explained

Common Bus Types Explained

Before discussing buses, we should first understand what a bus is. According to the complete definition from Baidu: A bus is a common communication line for transmitting information between various functional components of a computer. It is a transmission line composed of wires, categorized according to the type of information transmitted by the computer. In … Read more

FPGA-Based Multi-Channel UART/SPI Communication System

FPGA-Based Multi-Channel UART/SPI Communication System

1. Design Overview This design implements a multi-channel UART/SPI communication system, capable of one-to-many communication. The system can operate in UART mode or SPI mode. The reason I chose this topic is mainly that my current laboratory needs to write a fast communication system based on UART. This topic can help solidify my previously learned … Read more

Understanding UART, SPI, and I2C Communication Protocols

Understanding UART, SPI, and I2C Communication Protocols

UART, SPI, and I2C are common serial communication methods in embedded development. The underlying communication principles are not difficult, but many beginners struggle to learn them. Today, I will share some common low-level data transmission principles of these communication protocols. 1 UART Serial Communication UART: Universal Asynchronous Receiver/Transmitter. The UART interface is the most commonly … Read more