打印
[其他产品]

ATSAMD20E17内存空间的分配

[复制链接]
1737|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
laocuo1142|  楼主 | 2025-2-7 15:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ATSAMD20E17的boot区内存空间是多大,代码区,EEPROM,怎么分配的

使用特权

评论回复
沙发
捉虫天师| | 2025-2-9 20:01 | 只看该作者
Flash 总大小        128 KB
Bootloader 区域        8 KB(可配置)
主程序区                120 KB(可用代码区)

使用特权

评论回复
板凳
捉虫天师| | 2025-2-9 20:01 | 只看该作者
ATSAMD20 没有固定的 Boot ROM,但可以在 Flash 的前 8 KB 设置 Bootloader(用户可配置)。
如果使用官方的 SAM-BA Bootloader,默认占 8 KB Flash。
若不使用 Bootloader,则整块 Flash 可用作代码存储。

使用特权

评论回复
地板
裤脚口感好| | 2025-2-22 20:01 | 只看该作者
ATSAMD20E17 没有独立的 EEPROM 存储器,而是通过 Flash 存储器模拟实现。

使用特权

评论回复
5
wahahaheihei| | 2025-2-26 19:35 | 只看该作者
Flash 存储器
总大小:128 KB(0x20000 字节)

代码区:大部分 Flash 用于存储用户程序代码。

Bootloader 区:通常占用 Flash 的最后一部分空间,大小取决于 Bootloader 的实现。

默认 Bootloader 区大小为 8 KB(0x2000 字节),地址范围为 0x00020000 - 0x00021FFF。

用户代码区地址范围为 0x00000000 - 0x0001FFFF。

SRAM
总大小:16 KB(0x4000 字节)

地址范围:0x20000000 - 0x20003FFF

用途:存储运行时数据、堆栈和堆。

EEPROM
ATSAMD20E17 没有物理 EEPROM,但可以通过 Flash 模拟实现 EEPROM 功能。

模拟 EEPROM 大小:通常为 1 KB 或 2 KB,具体大小取决于用户配置。

模拟 EEPROM 的实现通常使用 Flash 的某个区域,并通过软件库(如 ASF 或 Harmony)管理。

使用特权

评论回复
6
wahahaheihei| | 2025-2-26 19:35 | 只看该作者
内存区域        地址范围        大小        用途
Flash 代码区        0x00000000 - 0x0001FFFF        128 KB        用户程序代码
Bootloader 区        0x00020000 - 0x00021FFF        8 KB        出厂预编程 Bootloader
SRAM        0x20000000 - 0x20003FFF        16 KB        运行时数据、堆栈
模拟 EEPROM        用户定义区域        1-2 KB        非易失性数据存储

使用特权

评论回复
7
wahahaheihei| | 2025-2-26 19:36 | 只看该作者
Flash 存储器:128 KB,其中 Bootloader 区通常占用最后 8 KB。

SRAM:16 KB,用于运行时数据。

EEPROM:通过 Flash 模拟实现,通常为 1-2 KB。

Bootloader 区:默认 8 KB,位于 Flash 的最后部分。

使用特权

评论回复
8
chenqianqian| | 2025-2-26 19:36 | 只看该作者
microchip的MPU芯片放到现在性能差了很多啊

使用特权

评论回复
9
hhdhy| | 2025-3-11 17:15 | 只看该作者
ATSAMD20E17 是 Microchip(原 Atmel)推出的一款arm内核的 32 位微控制器。其存储器空间包括 Bootloader 区、代码区(Flash) 和 EEPROM。以下是其存储器分配的具体信息:Bootloader 区大小:ATSAMD20E17 的 Bootloader 区通常为 8 KB

使用特权

评论回复
10
gongqijuns| | 2025-3-11 18:23 | 只看该作者
用于存储出厂预编程的 Bootloader,支持通过 UART、USB 等接口进行固件更新。地址范围:0x0000_0000 到 0x0000_1FFF(具体地址可能因芯片型号和配置有所不同)

使用特权

评论回复
11
hight1light| | 2025-3-11 19:27 | 只看该作者
ATSAMD20E17 的 Flash 大小为 128 KB。用于存储用户程序代码和常量数据。

使用特权

评论回复
12
星星点点didi| | 2025-3-11 20:30 | 只看该作者
其实ATSAMD20E17 没有独立的 EEPROM,但可以通过 Flash 模拟 EEPROM。用于存储需要频繁擦写的数据(如配置参数)。

使用特权

评论回复
13
nuan11nuan| | 2025-3-11 21:34 | 只看该作者
Bootloader 区通常受保护,用户无法直接修改。如果需要自定义 Bootloader,需禁用保护(具体方法参考数据手册)。

使用特权

评论回复
14
gra22ce| | 2025-3-11 22:52 | 只看该作者
由于 Flash 的擦写次数有限(通常为 10,000 次),模拟 EEPROM 时需注意磨损均衡(Wear Leveling)。

使用特权

评论回复
15
gouguoccc| | 2025-3-12 07:54 | 只看该作者
用户可用的就是flash区域啊,没明白问题。

使用特权

评论回复
16
清芯芯清| | 2025-3-12 10:24 | 只看该作者
在链接脚本(Linker Script)中明确分配 Bootloader 区、代码区和模拟 EEPROM 的地址范围。

使用特权

评论回复
17
ewyu| | 2025-3-12 12:57 | 只看该作者
Bootloader 区:8 KB,地址范围为 0x0000_0000 到 0x0000_1FFF。代码区(Flash):120 KB,地址范围为 0x0000_2000 到 0x0001_FFFF。模拟 EEPROM:通常使用 Flash 的末尾部分(如 4 KB),地址范围为 0x0001_F000 到 0x0001_FFFF。

使用特权

评论回复
18
yuliangren| | 2025-3-12 14:10 | 只看该作者
在实际开发中,需根据需求合理分配存储器空间,并注意 Bootloader 区的保护和 Flash 模拟 EEPROM 的磨损均衡

使用特权

评论回复
19
eleg34ance| | 2025-3-12 15:08 | 只看该作者
其实手册应该都写了,一般是多大的空间来着

使用特权

评论回复
20
xiaoqi000| | 2025-3-27 23:52 | 只看该作者
在 ATSAMD20E17 上,Bootloader 区域 和 应用程序代码区 的分配是可配置的,通常是通过在编译时配置启动文件来设置。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1292

主题

6081

帖子

14

粉丝