尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
MCU 上电启动流程
简化版MCU上电流程1. 外部电源接入芯片 VDD内部 LDO、模拟电路开始上电2. POR上电复位电压低于阈值时 持续复位3. 内核、外设、寄存器复位和 flash、RAM 就绪4. 等待HIS稳定5. 锁定boot值6. 上述操作完成后复位信号NRST拉高CPU内核退出复位硬件自动开始取指。MCU软件启动流程1. 上电硬件自动加载 主栈指针MSP2. 跳转到复位中断函数3. 初始化数据段.data、清.bss段4. 进入 main5. 用户初始化时钟、外设6. 进入主循环程序常见问题1. 数据段和 BSS 段是什么- .data 段有初始值的全局 / 静态变量需要从flash复制初始值- .bss 段没初始化的全局 / 静态变量启动时必须清 02. 启动文件 startup.s 作用startup.s汇编文件内部包含Reset_Handler 复位函数负责最早期硬件与 C 语言环境初始化没有它main函数跑不起来。3. 程序从哪里开始执行不是从 main 开始是从 Reset_Handler 复位函数开始再跳 main4. 什么是MSPMSP 本质是一个32位寄存器存放 栈内存的顶端地址。MSP 指向的栈 作用是 保存临时数据、函数局部变量。上电必须先初始化 MSP否则没有MSP指向的栈CPU无法调用函数、响应中断程序根本跑不起来关键特点栈是向下生长因此MSP 初始值是栈最高地址使用时地址不断减小普通版一、硬件上电时序1. 外部电源接入芯片 VDD/VSS内部 LDO、模拟电路开始上电2. 电源监控模块POR工作- POR上电复位电压低于阈值时持续输出复位信号3. 内核、外设、寄存器复位4. flash、RAM 就绪上电后可以稳定读写5. 等待HIS稳定6. 复位结束上述操作完成后需要额外的delay时间复位信号NRST拉高CPU内核退出复位硬件自动开始取指。delay时间解释一般上电时间很快所以POR复位信号很快就会释放但是芯片还需要复位内核、外设等模块等待模拟IP的稳定LDO、HIS、以及等待加载FLASH的OTP数据等。因此需要先把CPU内核复位拉低等待准备好后再释放NRST。二、硬件自动取指1. 硬件读取 BOOT0/BOOT1引脚电平选择向量表起始基地址- BOOT00向量表基址 0x08000000主 Flash 启动- BOOT01向量表基址 0x20000000SRAM启动或系统存储器BOOTloader2. 硬件从选中的基址读 0 偏移 MSP0x4 偏移 Reset_Handler 地址例如从flash启动Flash起始地址0x0800_0000也是中断向量表的基地址。地址0x08000000存放的是栈顶地址MSP即主栈指针地址0x08000004存放的是复位函数Reset_Handler的入口地址CPU内核复位结束后固定操作1. 从中断向量表的基地址0x08000000读取4字节作为主栈指针MSP2. 从地址0x08000004读取4字节作为复位函数Reset_Handler的入口地址写入程序计数器 PC3. CPU跳转到复位函数Reset_Handler入口地址正式进入软件启动阶段。三、软件启动全过程分为复位函数Reset_Handler → C库初始化 → main 函数阶段1执行startup.s里的复位函数Reset_Handler注复位中断服务函数是CPU上电执行的第一条代码执行复位函数Reset_Handler包含以下步骤1. .bss段 清零没初始化的全局 / 静态变量启动时必须清 02. .data段 数据初始化有初始值的全局 / 静态变量需要从flash复制初始值给全局变量赋初始值3. 跳转到标准库入口 __mainC 库初始化入口阶段2C标准库初始化__main编译器自带完成 C 标准库相关初始化随后调用用户 main 函数。阶段3用户main函数初始化应用层软件1. 初始化外设配置 RCC开启HSE/PLL、配置AHB/APB分频确定系统主频以及其他外设。2. 中断配置EXTI、NVIC 优先级、中断屏蔽3. 低功耗、定时器、串口、ADC 等外设初始化4. 主循环 while (1)阶段4程序运行中断抢占程序正常跑主循环外设产生中断请求送 NVIC打断主流程跳转到对应中断服务函数若进入 WFI/WFE 休眠由 EXTI、定时器等外设唤醒 CPU恢复运行。
RELATED

相关推荐

CentOS磁盘空间分析与优化实战指南

CentOS磁盘空间分析与优化实战指南

1. 快速掌握CentOS磁盘空间分析技巧作为Linux系统管理员,最常遇到的场景之一就是服务器磁盘空间告急。上周我就遇到了一个典型案例:某台运行了3年的CentOS服务器突然报出"no space left on device"错误,导致关键应用无法写入日志。…

📅 2026/11/8 4:47:01
如何用10分钟语音数据训练专业级AI音色模型:RVC变声器完整指南

如何用10分钟语音数据训练专业级AI音色模型:RVC变声器完整指南

如何用10分钟语音数据训练专业级AI音色模型&#xff1a;RVC变声器完整指南 【免费下载链接】Retrieval-based-Voice-Conversion-WebUI Easily train a good VC model with voice data < 10 mins! 项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice…

📅 2026/11/5 16:16:03
CW32开发板驱动点阵屏电子时钟项目实战

CW32开发板驱动点阵屏电子时钟项目实战

1. CW32饭盒派开发板与点阵屏电子时钟项目概述最近在试用CW32饭盒派开发板时&#xff0c;我完成了一个结合点阵屏显示驱动与电子时钟功能的项目。这个项目使用了两块117分辨率的橙色点阵屏来显示时间信息&#xff0c;通过74HC595移位寄存器进行驱动&#xff0c;实现了稳定清晰的…

📅 2026/11/8 19:48:33
MORE NEWS

更多资讯

📰

电工证哪里靠谱怎么考?上岗必备的证书你真的了解吗

电工证哪里靠谱怎么考?上岗必备的证书你真的了解吗 证书过期了不知道怎么复审延期,这几乎是每个特种作业人员都经历过的问题。特别是电工证,作为上岗必备的证件,如果过期不处理,不仅影响工作安排,还可能面临法律风险。很多人误以为电工证是“一劳永逸”…

📰

电工作业证6年过后怎么复审?网上查询方法+行业前景全解析

电工作业证6年过后怎么复审?网上查询方法+行业前景全解析 证书过期了不知道怎么复审延期,这事儿真让不少老电工头疼。你是不是也遇到过这种情况:手里拿着电工作业证,眼看着有效期快到了,但对复审流程一无所知?其实,国家早有明确规定,电工证的有效期…

📰

电工证哪里靠谱怎么报名?外省证能转过来吗?

电工证哪里靠谱怎么报名?外省证能转过来吗? 之前考的证在外省能不能转过来?这几乎是每个准备报考电工证或者已经在持证的从业者都会遇到的问题。如果你也在纠结【电工证哪里靠谱】,那这篇文章就为你详细解答,包括怎么报名、怎么选培训机构、证书有效期、…

📰

煤气作业证吃香吗到期换证流程

工地太忙根本没时间复习考试?煤气作业证值不值得考 工地太忙根本没时间复习考试,你不是一个人。很多人在项目上连吃饭都赶时间,更别说抽空准备考试了。特别是像 煤气作业证 这种证,很多人都会问:“ 煤气作业证吃香吗…

📰

海军高级电工证怎么考?郑州报考避坑指南全解析

海军高级电工证怎么考?郑州报考避坑指南全解析 你是不是也遇到过这样的情况?想考个 海军高级电工证 ,却不知道从哪开始,担心被中介坑钱、被骗资料、耽误时间?别急,这篇文章就是为你量身打造的 郑州报考避坑指南…

📰

电工证考试到发证多久?应届生想快速上岗得先搞清楚在哪考

电工证考试到发证多久?应届生想快速上岗得先搞清楚在哪考 你是不是刚毕业就急着找工作,结果被要求先考电工证?别急,今天就给你把电工证考试到发证多久讲明白,还有应届生怎么快速拿到证、在哪里考、怎么准备,全都给你说清楚。…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬