LuatOS Development Practice: SPI Example

LuatOS Development Practice: SPI Example

Read the latest documentation and participate:【Find Errors in Documentation and Win Prizes】 ActivityFor the latest documentation content of this article, see:https://docs.openluat.com/air724ug/luatos/app/driver/spi/ 1. Introduction SPI stands for Serial Peripheral Interface. SPI is a high-speed, full-duplex, synchronous communication bus that only occupies four lines on the chip pins: SDI (Data Input), SDO (Data Output), SCLK (Clock), and … Read more

Bluetooth Headset Development – Design of TWS Bluetooth Headset Bidirectional Communication Charging Case

Bluetooth Headset Development - Design of TWS Bluetooth Headset Bidirectional Communication Charging Case

Follow+Star Public Account Number, don’t miss out on exciting content In recent years, starting with Apple’s release of theAirPods, the true wireless headset market has seen rapid growth, and theTWS/OWS headset market has also experienced significant sales increases. The charging cases that accompanyTWS headsets have developed rapidly alongside the headsets. This article introduces a design … Read more

Flashing Guide for Allwinner Series Chips

Flashing Guide for Allwinner Series Chips

Click on the above “HD Life” to follow us and subscribe for great articles In the previous session, we provided a flashing course for the RK3188 series. This time, the editorial team will give a detailed explanation of flashing for Allwinner series products. Let’s get straight to the point, Let’s Go! This course is applicable … Read more

Understanding Programming for STM32: A Comprehensive Guide

Understanding Programming for STM32: A Comprehensive Guide

Hello everyone, I am Liang Xu. This article is the 5th in the embedded series, and I plan to publish two articles per week in the future. The articles will be organized systematically to facilitate learning and communication. All of Liang Xu’s articles are first published on the website: www.lxlinux.net/e/, feel free to bookmark it. … Read more

Unveiling ARM Cortex-M Startup: From Power-On to Your main() Function

Unveiling ARM Cortex-M Startup: From Power-On to Your main() Function

Today, let’s delve into a seemingly basic yet often overlooked topic — what exactly happens from the moment you press the reset button until your <span>main()</span> function begins execution? Overview of the Startup Process: The Journey of System Awakening Imagine your MCU as a robot just awakened. It needs to get dressed (load the stack), … Read more

Understanding the BIOS Chip on the Motherboard

Understanding the BIOS Chip on the Motherboard

1. What is BIOS The term BIOS first appeared in 1975, and it stands for Basic Input Output System. It truly gained prominence with the launch of the IBM PC in 1981, marking the beginning of a tumultuous history. The IBM PC system generally consists of three parts: hardware, software, and the middleware BIOS, with … Read more

7 Essential Tips for Embedded System Development

7 Essential Tips for Embedded System Development

Becoming a formal embedded development engineer is a challenging process that requires developers to maintain and manage every bit and byte of the system. From a well-defined development cycle to strict execution and system checks, there are many techniques for developing highly reliable embedded systems. Today, I will introduce 7 practical and long-lasting tips that … Read more

Xiao Zhi AI Communication Protocol Fix: Registering Devices via OTA Interface

Xiao Zhi AI Communication Protocol Fix: Registering Devices via OTA Interface

Last week, I organized the WebSocket communication protocol of Xiao Zhi AI, titled “Reproducing Xiao Zhi AI Step 2: Learning Its WebSocket Protocol with Two Core Flowcharts“, and later during debugging, I discovered a missing point, which was the omission of the device registration step. Initially, I found the <span>"OTA_VERSION_URL": "https://api.tenclass.net/xiaozhi/ota/"</span> field in the configuration … Read more

Unveiling ARM Cortex-M Startup: From Power-On to Your main() Function

Unveiling ARM Cortex-M Startup: From Power-On to Your main() Function

Today, let’s delve into a seemingly basic yet often overlooked topic — what exactly happens from the moment you press the reset button until your <span>main()</span> function begins execution? Startup Process Overview: The Journey of System Awakening Imagine your MCU as a robot just awakened. It needs to get dressed (load the stack), understand its … Read more