登录/注册

STM32 下载时不全片擦除

STM32 下载时不全片擦除

更多

在STM32下载程序时避免全片擦除,可以通过以下方法实现:

方法1:在IDE中设置(以Keil MDK为例)

  1. 打开工程选项:点击 Project -> Options for Target
  2. 进入下载设置:转到 Debug -> Settings(或Utilities -> Settings
  3. 配置擦除模式
    • Flash Download 选项卡中
    • 取消勾选 Erase Full Chip(全片擦除)
    • 勾选 Erase Sectors(按扇区擦除)
    • 选择需要擦除的具体扇区(保留重要数据的扇区不选)

方法2:使用STM32CubeProgrammer

  1. 连接开发板,打开软件
  2. 进入烧录配置
    • 选择左侧 Erasing and Programming
  3. 修改擦除模式
    • Erase mode 中选择 Bank/Mass EraseSector Erase
    • 在下方扇区表中手动选择需要擦除的区域(避开包含关键数据的扇区)

方法3:使用ST-LINK Utility

  1. 连接设备
  2. 菜单设置
    • Target → Erase Settings
  3. 选择擦除方式
    • 选择 Erase used sectors only(仅擦除已用扇区)

关键注意事项:

  1. 数据保护

    • 务必确认需要保留的扇区地址范围(如EEPROM模拟区域、用户配置区)
    • 扇区大小需查《参考手册》(如STM32F4的扇区大小为16KB~256KB不等)
  2. 使用限制

    • 首次烧录必须全片擦除(新芯片为全1状态)
    • 若目标扇区已有数据,编程前需手动执行扇区擦除STM32CubeProgrammer → Erase Sector
  3. 推荐操作

    // 在代码中配置保护区域(例:保护FLASH的Sector 11)
    HAL_FLASHEx_OBProgram(OB_WRP_SECTOR_11, OB_WRPSTATE_ENABLE);

    通过写保护锁定关键扇区,防止误擦除。

结果验证:

烧录完成后:

  1. 在STM32CubeProgrammer中使用 "Memory read" 功能
  2. 检查保留扇区的数据是否未被修改(如用户配置区地址0x080C0000的数据)

通过以上设置,STM32只会擦除程序占用的扇区,保留其他扇区的原始数据。

STM32使用ISp烧录HEX文件运行,代码重新编译之后的产生的新hex文件选择全片擦除就没办法正常运行,为什么?

我有一套代码需要使用ISp烧录HEX文件运行,代码有一个老的HEX,无论是全片擦除还是擦除重要部分再

2025-03-10 07:42:04

TC275TP PFLASH中的一些地址在擦除后并不全是0x00,为什么?

你好,我正在测试闪存擦除。 在擦除和随后的回读过程中,我发现 PFLASH 中的一些地址在擦除后并

2024-07-05 06:17:18

STM32F107RBT6页擦除函数返回值成功但目标扇区数据并未成功擦除,为什么?

配置 FLASH_ACR 2个等待位,开启预取缓存区。MCU在执行擦除任务时供电稳定3.28V。 除此之外,使用 STM32 ST-LINK Utility 验证发现,

2024-05-23 06:44:20

解决stm32f103同一个扇区flash只能擦除一次,再次擦除报FLASH_ERROR_PG错误问题

项目中用到stm32内部flash存储一些系统运行数据,每次上电重新加载保存的数据。早先用法如下图所示,擦除之前每次要关闭总中断,解锁flash,擦除

资料下载 佚名 2021-12-02 11:51:13

STM32 flash擦除错误的问题临时解决措施

STM32 Flash擦除错误故障现象解决办法故障现象我们研发的设备,在擦除0x0800FC00这一配置页时,发现0x0800E800的数据也会

资料下载 佚名 2021-12-02 10:36:06

基于STM32f103的FFT频率测试程序下载

基于STM32f103的FFT频率测试程序下载

资料下载 shyshyshy 2021-08-02 10:07:20

STM32擦除内部FLASH时间过长导致IWDG复位

STM32擦除内部FLASH时间过长导致IWDG复位(嵌入式开发一般采用什么方式?)-客户反馈在使用STM32F412的时候,

资料下载 佚名 2021-07-30 11:06:36

STM32单片机电机控制仿真包资源下载

STM32单片机电机控制仿真包资源下载

资料下载 hai911 2021-04-06 16:14:30

ST LINK utility与STM32G0采用SWD连接,使用ST LINK utility擦除全片程序时擦除不了怎么解决?

ST LINK utility与STM32G0采用SWD连接,可通过KEIL下载程序,而使用ST LINK utility擦除

2024-03-14 07:56:02

怎么擦除stm32单片机里面的程序呢?

怎么擦除stm32单片机里面的程序呢? 要擦除STM32单片机内部的程序

2023-09-14 14:22:37

ST LINK utility与STM32G0采用SWD连接,ST LINK utility无法擦除全片程序是为什么?

ST LINK utility与STM32G0采用SWD连接,可通过KEIL下载程序,而使用ST LINK utility擦除

2023-08-08 08:21:04

【野火 fireFlasher Mini 脱机烧录器】+与STLINKV3烧录对比

)。 hex文件大小为266KB,其中主要内容是实现RGB_LCD的刷屏操作。 烧录流程选择为先全部擦除FLASH,然后下载。目标芯片型号为STM32

2023-05-22 00:43:42

使用STM32CubeProgrammer擦除闪存出错该如何去解决

我按照自述文件中的内容运行了 STM32CubeU5 的 SBSFU 示例,没有任何问题。然后我禁用了 *** 但我无法运行使用 STM32CubeIDE 制作的项目,

2022-12-07 09:08:11

CH32V103下载程序总是失败是什么原因?

CH32V103 下载程序总是失败,必须全片擦除,下电,再次烧录才能成功!这是什么原因呢?

2022-05-27 07:05:00

STM32CubeIDE stlink下载程序出现flash无法擦除现象

STM32CubeIDE stlink下载程序出现flash无法擦除现象(已关闭读写保护)

2022-03-02 06:42:10
7天热门专题 换一换
相关标签