Understanding Zephyr System Timer Implementation

Understanding Zephyr System Timer Implementation

The kernel time of Zephyr is driven by sys_clock_announce. Regardless of the SOC type, the system timer is driven by interfacing with this API. For details, refer to the Zephyr Tick Clock Introduction. All system timer drivers for Zephyr are located under zephyr/drivers/timer. How Zephyr Chooses Which Driver to Use All system timer drivers supported … Read more

What Happens During ECU Power Up and Down

What Happens During ECU Power Up and Down

The startup of the ECU definitely begins with the chip’s BootROM. I have previously written about the startup process of the Infineon Tricore series (if interested, click back to —>What Does Infineon TC27X Need to Do to Start). After the main chip kernel is initialized, what needs to be done for software initialization? In today’s … Read more

How to Build the RISC-V MCU Ecosystem?

How to Build the RISC-V MCU Ecosystem?

According to authoritative market research institutions, the global microcontroller (MCU) market is expected to reach a total sales of $19 billion in 2021, with shipments exceeding 25 billion units. From 2021 to 2028, the compound annual growth rate (CAGR) of MCUs is approximately 10%, increasing to $36 billion by 2028. A report released by IC … Read more

Keil MDK Debugging Features Overview

Keil MDK Debugging Features Overview

Follow+Star Public Number, don’t miss wonderful content Author | strongerHuang WeChat Public Account | Embedded Column Although Keil is often criticized, especially for its interface that feels like it’s from the last century (actually, IAR is similar), but its debugging features should be above reproach, especially for debugging Cortex-M core microcontrollers. Keil MDK supports a … Read more

Strange Phenomenon of FFT in DSP Library

Strange Phenomenon of FFT in DSP Library

1. Introduction This is a module for signal acquisition and computation built a couple of days ago using the H7B0 microcontroller, which uses its 16-bit ADC to capture signals and perform spectrum analysis, with results displayed on an OLED screen. Calculating a 2048-point FFT takes about 10 milliseconds. Next, let’s test if the computation speed … Read more

Understanding SWD Download Communication Principles

Understanding SWD Download Communication Principles

Follow+Star PublicAccount, don’t miss exciting content Author | strongerHuang WeChat Public Account | Embedded Column The mainstream download interfaces for microcontrollers based on the Cortex-M core are JTAG and SWD. Differences Between SWD and JTAG Pins: JTAG: TDI: Test Data In. Serial input pin TDO: Test Data Out, serial output pin TCK: Test Clock, clock … Read more

SWD Low-Level Implementation Principles

SWD Low-Level Implementation Principles

Author | strongerHuang WeChat Official Account | Embedded Column The mainstream download interfaces for microcontrollers based on the Cortex-M core are JTAG and SWD. Differences Between SWD and JTAG Pins: JTAG: TDI:Test Data In. Serial input pin TDO:Test Data Out, serial output pin TCK:Test Clock, clock pin TMS:Test Mode Select, mode select (control signal) pin … Read more

Using SystemView in Bare-Metal Systems

Using SystemView in Bare-Metal Systems

SystemView is an embedded system visualization analysis tool that provides complete insights into applications, including visual windows for timelines, CPU load, runtime information, and context runtime information, helping developers gain an in-depth understanding of application runtime behavior. It supports μC/OS-II, μC/OS-III, FreeRTOS, embOS, and bare-metal systems without an OS, allowing for a deep understanding of … Read more

Relocating Vector Table in Cortex-M Architecture MCU

Relocating Vector Table in Cortex-M Architecture MCU

The Cortex-M architecture uses a vector table lookup mechanism. When an exception occurs, the core automatically looks up the entry address of the handler from the vector table. The vector table is essentially an array of WORDs (32-bit integers), where each index corresponds to a specific exception, and the value of that index is the … Read more