摘要: 上电流程 基于地址从低到高(从上到下)的内存分布模型,Cortex-M MCU 的启动过程可以分为三个关键阶段: 硬件自动加载阶段、 软件环境准备阶段、 跳转进入用户代码阶段。 第一阶段:硬件自动加载(物理层触发) 当 MCU 上电,复位引脚(Reset Pin)释放的一瞬间,CPU 处于管态(内核 阅读全文
posted @ 2025-12-24 08:44 口嗨养生博 阅读(2) 评论(0) 推荐(0)
摘要: 一、 MSP vs. PSP:双堆栈机制的奥秘 在 Cortex-M 中,R13 寄存器是堆栈指针(SP)。但实际上,内部有两个物理寄存器:MSP(Main Stack Pointer,主堆栈指针) 和 PSP(Process Stack Pointer,进程堆栈指针)。但在任何时刻,只有一个会被映 阅读全文
posted @ 2025-12-24 08:39 口嗨养生博 阅读(3) 评论(0) 推荐(0)
摘要: MSP 和 PSP 的使用环境 即使不使用 RTOS,一定会用到 MSP,但通常不会用到 PSP。 在不带操作系统的“裸机(Bare-metal)”环境下,MSP 和 PSP 的使用情况如下: 1. MSP 是必须使用的 (Always Used) 无论写多么简单的代码,只要是用 C 语言写的,MS 阅读全文
posted @ 2025-12-24 08:36 口嗨养生博 阅读(1) 评论(0) 推荐(0)
摘要: Cortex-M 详细内存布局图(地址:由低向高) 说明: 1. 为什么“向上”和“向下”增长很重要? 堆 (Heap) - 向上增长:当你调用 malloc() 时,分配器会从 .bss 段结束的地方开始,寻找空闲内存,地址是越来越大的。 栈 (Stack) - 向下增长:这是 Cortex-M 阅读全文
posted @ 2025-12-24 08:35 口嗨养生博 阅读(5) 评论(0) 推荐(0)