[求助] STM32单片机是不是写内部FLASH时不可以调试

bigbat   2024-1-30 13:05 楼主

我在使用官方的FLASH_EraseProgram例程时,发现只要打开调试,则flash擦除程序HAL_FLASHEx_Erase就会失败。无论断点下到什么位置都会失败。

回复评论 (4)

看你的HAL_FLASHEx_Erase要擦除哪一块区域。如果要擦除当前正在执行的程序,那应该会失败。

点赞  2024-1-30 14:22

对,楼上老师说的是这样。

默认摸鱼,再摸鱼。2022、9、28
点赞  2024-1-30 14:43
引用: wangerxian 发表于 2024-1-30 14:22 看你的HAL_FLASHEx_Erase要擦除哪一块区域。如果要擦除当前正在执行的程序,那应该会失败。

我擦除的是片内最后一块扇区,MCU有128K flash,ADDR_FLASH_PAGE_63,2K一个FLASH块,程序应该没有到达这么长。

点赞  2024-1-30 16:28

这段程序关键是如果在不使用中断的情况下是可以完成flash写入的,就是先加断点就不可以,如果执行完成flash写入后中断也是可以的。

点赞  2024-1-30 17:32
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复