CRC Check in CAN Bus

CRC Check in CAN Bus

Click the blue text Follow us 1. CRC Principle 1.1 Generating Polynomial To understand CRC checks, one must first grasp the concept of the generating polynomial. The generating polynomial is simply a divisor agreed upon by the sender and receiver. Both parties use this same divisor to perform modulo-2 operations. If the results are the … Read more

Explaining CRC8 Cyclic Redundancy Check with C Language Examples

Explaining CRC8 Cyclic Redundancy Check with C Language Examples

TRAVELClick “Yunlong Sect”to follow usContent CRC (Cyclic Redundancy Check) is a widely used error detection mechanism for data transmission and storage, especially in automotive embedded systems to ensure the integrity of critical information such as CAN bus and sensor data. Today, we will mainly introduce CRC checks through example programs.. 1. Principle of CRC Check … Read more

Rust CRC-Fast: 10× Speedup with Just One Line of Code

Rust CRC-Fast: 10× Speedup with Just One Line of Code

CRC (Cyclic Redundancy Check) is a classic error detection algorithm that generates a checksum through polynomial division to verify data integrity. It is widely used in network protocols, file storage, and embedded systems.<span>crc-fast</span> is the fastest CRC implementation library in the Rust ecosystem, maintained by Don MacAskill (originally awesomized), focusing on SIMD (Single Instruction Multiple … Read more

Modbus Protocol 5 – Checksum

Modbus Protocol 5 - Checksum

In the previous articles, we introduced Modbus Protocol 1 – Who Am I Modbus Protocol 2 – Modbus RTU Modbus Protocol 3 – Function Codes (Part 1) Modbus Protocol 4 – Function Codes (Part 2) Through the above articles, we have understood the message format of Modbus-RTU communication, which provides a basic grasp of Modbus … Read more

What is Modbus? Understanding It Clearly to Avoid Pitfalls Next Time

What is Modbus? Understanding It Clearly to Avoid Pitfalls Next Time

What is Modbus? Understanding It Clearly to Avoid Pitfalls Next Time Last night, a junior was debugging the RS-485 bus, and the slave device just wouldn’t respond. After capturing the data, I found: the CRC low byte was reversed! Not fully grasping the Modbus frame format meant that 1 byte error = total failure. Today, … Read more

A Comprehensive Guide to the Modbus Communication Protocol

A Comprehensive Guide to the Modbus Communication Protocol

This article aims to provide you with an intuitive understanding of Modbus, summarizing knowledge related to Modbus, making it very suitable for beginners. If there are any errors, suggestions and corrections are welcome. What is a Protocol Before understanding what Modbus is, let’s first look at what a protocol is. A protocol is a Chinese … Read more

Essential Tips for Embedded Developers: Keil + Scripting Tricks to Save 2 Hours of Downtime

Essential Tips for Embedded Developers: Keil + Scripting Tricks to Save 2 Hours of Downtime

Keil is a widely used tool in embedded development, and many tips are discovered gradually during use. Among them, I find several techniques to be extremely valuable. Today, I want to share a method for using automation scripts to compile and generate the desired files! The main issues addressed are as follows: 1. After completing … Read more

Comprehensive Guide to Integrating Qt Projects with CMake: The Correct Approach to Automatic MOC / UIC / RCC

Comprehensive Guide to Integrating Qt Projects with CMake: The Correct Approach to Automatic MOC / UIC / RCC

When writing C++ projects with Qt, many people’s first reaction is to directly use Qt Creator to create a <span>.pro</span> project, compile, and run, which goes smoothly. However, once the project needs to interface with an existing CMake build system or needs to be built in a cross-platform CI environment, the <span>.pro</span> file becomes inflexible, … Read more

CR: A Powerful C++ Library for CRC Calculations

CR: A Powerful C++ Library for CRC Calculations

CR: CRC++ Library in C++ In C++ development, there are many excellent libraries that help developers efficiently complete various tasks. Among them, CRC++ is a library focused on cyclic redundancy check (CRC) calculations, providing developers with simple, efficient, and flexible CRC computation capabilities. What is CRC++ CRC++ is a C++ library specifically designed for calculating … Read more

EtherCAT – Online

EtherCAT - Online

The upper interface in the image displays the address, name, and state machine status of the slave device.The “CRC” column shows the cyclic redundancy check counter value of a single EtherCAT slave device at a certain moment. The cyclic redundancy check counters for ports A, B (if used), C (if used), and D (if used) … Read more