新闻详情

新闻详情

首页 / 资讯中心 / 详情

深入解析ESP32C3(3)- bootloader启动流程

发布时间:2026/9/25 5:07:19来源:尧图网络
深入解析ESP32C3(3)- bootloader启动流程
ESP32C3启动流程可以分为如下3 个步骤:一级引导程序(PBL):被固化在了ESP32-C3 内部的ROM 中,它会从flash 的0x0 偏移地址处加载二级引导程序至RAM (IRAM DRAM) 中。二级引导程序(SBL):从flash 中加载分区表和主程序镜像至内存中,主程序中包含了RAM 段和通过flash高速缓存映射的只读段。应用程序(RTOS):APP启动运行,这时RTOS 的调度器和第二个CPU(多核)启动。一级引导程序(PBL)PBL固化在ESP32C3芯片内部ROM,无法更改。由于官方没有公开PBL的代码,这里直接参考开发向导的功能介绍。SoC 复位上电后,CPU 会立即跳转至0x4000_0000地址处,开始执行初始化操作。乐鑫提供了ELF格式的内部固件,以下是ELF头信息: riscv32-esp-elf-readelf.exe -h G:\Program\Espressif\tools\esp-rom-elfs\20230113\esp32c3_rev3_rom.elf ELF Header: Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, little endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: EXEC (Executable file) Machine: RISC-V Version: 0x1 Entry point address: 0x40000000 Start of program headers: 52 (bytes into file) Start of section headers: 553332 (bytes into file) Flags: 0x1, RVC, soft-float ABI Size of this header: 52 (bytes) Size of program headers: 32 (bytes) Number of program headers: 28 Size of section headers: 40 (bytes) Number of section headers: 75 Section header string table index: 74PBL开机日志:ESP-ROM:esp32c3-api1-20210207 Build:Feb 7 2021 rst:0x15 (USB_UART_CHIP_RESET),boot:0xc (SPI_FAST_FLASH_BOOT) Saved PC:0x4004c634 0x4004c634: uart_rx_readbuff in ROM SPIWP:0xee mode:DIO, clock div:1 load:0x3fcd5820,len:0x1710 load:0x403cc710,len:0x968 load:0x403ce710,len:0x2f9c entry 0x403cc710 //上面是PBL日志,后面是SBL日志 I (15) boot: ESP-IDF HEAD-HASH-NOTFOUND 2nd stage
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

RL-赵-(四)-基于模型01:值迭代算法(其中的值不是State Value,通过一步求出)【v₀(随机初始化)➞策略更新/PU➞π₁➞值更新/PE➞v₁➞PU➞π₂➞...】 2026/9/25 6:14:44

RL-赵-(四)-基于模型01:值迭代算法(其中的值不是State Value,通过一步求出)【v₀(随机初始化)➞策略更新/PU➞π₁➞值更新/PE➞v₁➞PU➞π₂➞...】

一、值迭代算法(Value iteration algorithm) 如下,如何求解 贝尔曼最优公式(Bellman Optimality Equation)? v=f(v)=max⁡π(rπ+γPπv) \color{red}{v=f(v)=\max_{\pi}\left(r_\pi\right.+\gamma P_\pi v)} v=f(v)=πmax​(rπ​+γPπ​v) 根据之前的内容,我们知道可…

阅读更多 →
Delphi连接MySQL 5.7必知:libmysql与dbxopenmysql50部署指南 2026/9/25 6:14:44

Delphi连接MySQL 5.7必知:libmysql与dbxopenmysql50部署指南

简介:面向 Delphi 7 开发者,这份 zip 资源专门解决通过 dbExpress 连接 MySQL 5.7 时动态库缺失或不兼容的常见问题,内含可直接使用的 libmysql.dll 与 dbxopenmysql50.dll,并配有可运行验证的测试工程,省去了四处寻找…

阅读更多 →
STC8H1K08T开发环境搭建:从Keil C51支持包安装到LED点灯 2026/9/25 6:14:44

STC8H1K08T开发环境搭建:从Keil C51支持包安装到LED点灯

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
SpringBoot大学生创新创业管理系统毕设实战指南 2026/9/25 6:14:44

SpringBoot大学生创新创业管理系统毕设实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Sinon 中 mock.restore 完全指南:还原所有被 Mock 的方法及其底层实现原理 2026/9/25 6:14:44

Sinon 中 mock.restore 完全指南:还原所有被 Mock 的方法及其底层实现原理

测试开发工具 【免费下载链接】sinon Test spies, stubs and mocks for JavaScript. 项目地址: https://gitcode.com/gh_mirrors/si/sinon 点击查看 免费下载 mock.restore() 是 Sinon 中 Mock 对象提供的关键方法,用于将对象上所有被 Mock 的方法还原为…

阅读更多 →
极域电子教室脱控现象解析:从通信原理到课堂运维的正确姿势 2026/9/25 6:14:38

极域电子教室脱控现象解析:从通信原理到课堂运维的正确姿势

作为一名在信息技术岗上摸爬滚打多年的机房管理员,我几乎每天都会遇到学生满脸期待地问我:“老师,极域电子教室怎么脱离控制?”甚至有时候在搜索后台能看到“极域电子教室脱控方法”这类关键词。说实话,早几年我也动过…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉