你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

CubeIDE 下载程序时不整片擦除芯片

[复制链接]
patch1582 提问时间:2026-6-9 14:05 / 未解决

编写好代码进入调试模式时,IDE 都会自动执行整片擦除,然后下载新编译的程序。 但我有一些需要保存在 Flash 中的自定义变量,会被一并擦除。 我在调试配置里取消勾选 [Download] 选项,这样变量不会被清除,但这种方式开发时不适用。 我查阅了一些方案,想保留指定的 Flash 区间不被擦除:确认可用 Flash 范围:0x08000000 ~ 0x08080000 查看了用户代码区和 flash.ld 链接脚本 最终决定把数据存放在地址 0x08002000 我修改了链接脚本,添加了如下段: .eeprom : { . += 0x200; . = ALIGN(0x800); / 2KB 保留区域 / } >FLASH 这段配置可以让程序跳过 0x08000200 开始的 2KB 空间,但下载程序时 IDE 依然会整片擦除。 我也添加 [NOLOAD] 属性: .eeprom (NOLOAD) : 但没有效果,我猜测这个属性只在上电时生效,不影响程序下载过程。 请问有没有办法配置 CubeIDE 的调试下载脚本,不擦除我保留的 Flash 区域?

收藏 评论1 发布时间:2026-6-9 14:05

举报

1个回答
STM1024 回答时间:昨天 23:23

下载擦除选择Sector,不要选全部Flash

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版