The Relationship Between ARM9 and STM32

The Relationship Between ARM9 and STM32

Recently, someone asked: What is the relationship between ARM9 and STM32? If we rewind 10 years, ARM9 and S3C2410 were quite popular, but the “new era” ARM processors like STM32 have also emerged. ARM9 is an early ARM processor, while STM32 is a more modern processor that has gained popularity in recent years. ARM Naming … Read more

Understanding Disassembly Files in Cortex-M Development

Understanding Disassembly Files in Cortex-M Development

Hello everyone, I am Pi Zi Heng, a serious technical guy. Today, I will talk about disassembly files in embedded development (.s, .lst, .dump). In the fourth, fifth, and sixth lessons, I introduced three types of output files generated by the compiler/linker (relocatable, map, executable files). These three files focus on how the compiled/linked code … Read more

Understanding Map Files in Cortex-M Development

Understanding Map Files in Cortex-M Development

Hello everyone, I am Pi Zi Heng, a serious techie. Today, I will talk to you about map files in embedded development. In the fourth lesson, I introduced the first type of output file – relocatable files. This article continues to discuss the second type of output file generated by the project – map files. … Read more

How to Determine If Cortex-M Processor Is Executing Interrupt Function?

How to Determine If Cortex-M Processor Is Executing Interrupt Function?

Follow+Star Public Account, don’t miss wonderful content Author | strongerHuang WeChat Official Account | Embedded Column Today, I want to share some knowledge I encountered while debugging code: the usage of __get_CONTROL, and the differences between xQueueSend and xQueueSendFromISR; 1 Source of the Problem I previously ported some code written by others on the FreeRTOS … Read more

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers Bare-metal programming typically refers to the process of writing programs to control hardware devices directly without an operating system. For embedded system developers, this is a fundamental and important skill. Today, I will guide you through how to implement bare-metal programming on ARM Cortex-M series microcontrollers. Starting … Read more

Understanding Linker Files in Embedded Development

Understanding Linker Files in Embedded Development

Hello everyone, I am Pi Zi Heng, a serious tech enthusiast. Today, I will discuss linker files in embedded development. In the previous lesson “Source Files (.c/.h/.s)”, I systematically introduced source files, which are typical input files in embedded projects. But are there other types of input files? Since I asked this question, the answer … Read more

Cortex-M MCU Learning Resources Organized by KEIL

Cortex-M MCU Learning Resources Organized by KEIL

The learning resources for Cortex-M core MCUs organized by KEIL are very detailed, and I am sharing them with everyone. (The comment feature has been enabled at the bottom of the article~~ You can express your suggestions and opinions, making communication more convenient! Thank you~~) Official Address: http://www2.keil.com/mdk5/learn/===================================For example, when we open the ST section:===================================Open … Read more

An Analysis of Cortex-M Stack Mechanism

An Analysis of Cortex-M Stack Mechanism

Hello everyone, I am Pi Zi Heng, a serious technical enthusiast. Today, I will introduce the ARM Cortex-M stack mechanism. This article is a technical document I wrote before 2016, and I have spent some time reorganizing the format. Previously, I discussed the “Principle of Stack in Embedded Systems”; this article serves as an engineering … Read more

Cortex-M System Interrupt Latency and Measurement Methods

Cortex-M System Interrupt Latency and Measurement Methods

Hello everyone, I am Pi Zi Heng, a serious technical person. Today, I will share with you the Cortex-M System Interrupt Latency and Measurement Methods. In the embedded field, real-time performance is a concept we often emphasize. Here, real-time performance mainly emphasizes whether the system can respond within a specified time frame when external events … Read more

Cortex-M Experiment Box (CW32) Overview

Cortex-M Experiment Box (CW32) Overview

The Cortex-M Experiment Box (CW32 version) is a development experiment device based on the CW32F030C8T6. The CW32F030C8T6, launched by Wuhan Xinyuan Semiconductor Co., Ltd., is a cost-effective domestic MCU based on ARM’s Cortex-M0+ core, with a maximum clock frequency of 64MHz, 64KB of FLASH, 8KB of RAM, and in an LQFP48 package. It is fully … Read more