Learning Embedded Systems From Scratch: A Detailed Roadmap

Learning Embedded Systems From Scratch: A Detailed Roadmap

Recently, while chatting with fans on Bilibili, I found out that one of them had worked at a small company for three years after graduation, doing QT development, earning only 7000 RMB per month. Now, the new graduates the company hires have starting salaries of 8000 RMB. He asked HR why the company has such … Read more

Guide to PCI Device Driver Design and Programming in VxWorks

Guide to PCI Device Driver Design and Programming in VxWorks

Overview VxWorks is a real-time operating system (RTOS) developed by Wind River, providing robust support for hardware interfaces, including Peripheral Component Interconnect (PCI) devices. Writing PCI device drivers in VxWorks involves interacting with the PCI bus, configuring devices, managing interrupts, and providing an access interface for applications. This guide will walk you through the process … Read more

Introduction to Tracealyzer: Supporting Zephyr RTOS Kernel Analysis

Introduction to Tracealyzer: Supporting Zephyr RTOS Kernel Analysis

Developing software based on Zephyr can be more challenging without effective debugging and analysis tools specifically designed for multithreaded code. Percepio Tracealyzer enables you to quickly troubleshoot and accelerate your daily development. Optimizing your system for reliable real-time performance is convenient, and you can start using this software within 15 minutes with a free evaluation. … Read more

Understanding Zephyr Build and Configuration System (Part 2)

Understanding Zephyr Build and Configuration System (Part 2)

Source: cnblogs.com | Author: Jayant Tang The Zephyr Project is an Apache 2.0 open-source project launched by the Linux Foundation, with a very friendly copyright, suitable for commercial project development. It includes an RTOS, a build system, and various third-party libraries. Most examples in NCS run on the Zephyr RTOS. For developers who have previously … Read more

Discussing the Complexity of Embedded Programming

Discussing the Complexity of Embedded Programming

The first step is to look at embedded issues from the perspective of PC programming; the second step is to learn to use embedded programming concepts; the third step is to combine PC and embedded thinking and apply it to actual projects. Many friends transition from PC programming to embedded programming. In China, few embedded … Read more

Where Does the Program Go After It Ends?

Where Does the Program Go After It Ends?

Introduction: For embedded systems, if there is no RTOS running, the main function (main()) in program development needs to keep running indefinitely through some mechanism; it has no endpoint. If you want to exit the main function, what to do specifically is determined by the C language compiler used. Keywords: C51, main, program exit 01 … Read more

Debugging nRF9160 Zephyr Applications Using Ozone

Debugging nRF9160 Zephyr Applications Using Ozone

Ozone is SEGGER’s free embedded software debugger. It is a powerful tool that allows you to gain deep insights into what is happening within embedded systems. It is particularly useful when debugging nRF9160 Zephyr applications. Organizing multiple threads and multi-image builds can be challenging, but this is the tool you want. In our previous blog … Read more

RTOS Kernel Optimization: Achieve 0.1μs Response Time

RTOS Kernel Optimization: Achieve 0.1μs Response Time

PART.01Performance Kill: Three Major Tricks to Push RTOS Kernel to the Limit1. Interrupt Response: The “Bloody Evolution” from μs to Clock Cycles Traditional Solution: FreeRTOS default interrupt latency ≥5μs (some industrial control devices measured directly up to 8.7μs); Huawei Black Technology: L1 Cache Preloading Mechanism (measured on Hisilicon Hi1812 chip): T_{latency} = T_{int} + \lceil … Read more

BMS Development (8) – Software Architecture

BMS Development (8) - Software Architecture

1. Assumptions and Constraints Master CPU MASTER CPU SLAVE CPU Master CPU Model Infineon TC275TP Slave CPU Model Freescale MM9Z1_638 Hardware Constraints PFLASH: 4M Byte, Data Flash: 384K Byte, DSPR: 120K Byte, PSPR: 20K Byte Hardware Constraints Flash: 128 kByte, RAM: 8.0 kByte, EEPROM: 4.0 kByte Memory Consumption Overall usage ≤ 80%, for stack: Normal … Read more