← 返回文章库

ESP 分区名称不同就不会重叠吗,边界怎样判断

最后更新 2026-10-23
⏱ 约 6 分钟 🟡 涉接线/强电

分区是否重叠取决于地址区间,与名称不同无关。应按[start,end)比较,前一分区结束地址恰好等于后一分区起点是相邻,不算重叠。

本文由器赋开物编辑整理,AI 辅助撰写。下面输入是合成对照,用于复算公式或协议规则,没有连接真实设备完成现场验证。

本次具体要判断什么?

合法对照a为0x9000至0xB000不含末端,b从0xB000开始。若把b改0xA000,两区间交叠,工具拒绝;不同名称不会让同一Flash地址拥有两份独立空间。

先保存可复算的对照输入

打开ESP-IDF 分区 CSV 布局检查器,把默认值改为下表场景。文字或字节过长时这里只展示摘要,完整原始输入在附件中。

输入项目 对照值 单位或格式
简单分区CSV a,data,nvs,0x9000,0x2000,
b,data,nvs,0xB000,0x2000,
见字段定义
实际Flash总容量 4 MiB
分区表偏移 0x8000 HEX或十进制

模型或规则得到什么结果?

表后从Offset+0x1000起;空偏移按app 64KiB、data 4KiB对齐

结果项目 对照输出 单位
分区数量 2 个
最高分区结束地址,不含末字节 0x0000D000 按模型解释
分区占用合计 16384 byte
表后未分配空间总和,非连续保证 4141056 byte
自动偏移后的布局 a data 0x00009000 8192 byte
b data 0x0000B000 8192 byte
按模型解释

仅检查此CSV的名称、基础类型、偏移、重叠与Flash边界;不验证全部子类型、启动兼容性、签名和存量设备迁移。

下载本例完整输入、输出与核验记录 JSON。64 位整数按字符串保留,未四舍五入的计算值保存在附件;设备、仪器和实际结论栏目留空,不把预测当测量。

怎样核对和排查?

对每个分区先求起点加大小的结束地址,统一使用不含末端约定。逐对检查交集,再核对Flash上界、表前保留区域和类型对齐。若CSV行顺序与物理地址顺序不同,保留两者,避免只比较相邻文本行。

哪些做法容易误判?

将“结束地址”既用于最后有效字节又用于下一字节边界,会引入一字节误差。工具显示结束地址不含末字节,Intel HEX摘要则明确最高数据字节包含,两页含义不能混用。

什么条件才足以接受结论?

相邻合法、交叠非法和越界非法三组测试符合约定,官方分区工具继续做完整验证。工具通过仅说明已列检查满足,不保证子类型、镜像和启动流程正确。

适用范围与相关资料

继续查阅相关原理或其他工具。使用不同工具时先核对输入单位、模型和协议版本,避免把一个场景的结论直接套到另一个场景。

只支持无引号的5或6列app/data表、K/M整数单位,名称最多15个UTF-8字节;不验证全部子类型、加密、安全启动和存量设备迁移,不生成烧录二进制。

依据:乐鑫:自定义分区表。实现检查覆盖了独立算例和拒绝路径;工具自身通过测试不能替代你对硬件、SDK版本和业务规则的核验。

继续处理相邻任务

📄 来源 / 自校链接

本文为公开资料整理,非亲测。关键参数与代码请结合实物与下列官方来源验证。

内容有错、看不懂、或想看下一期?告诉我们 →

本文为公开资料的学习整理,非亲测。涉接线/花钱/合规的步骤请结合实物与官方最新资料验证,风险自负。见免责声明。

这个页面有问题?

提交时会附带当前页面地址和浏览器信息,帮助我们定位问题。不填联系方式即为匿名。