jlink读取stm32程序为什么会擦除芯片?

jlink读取stm32程序为什么会擦除芯片?,第1张

程序空间冲突。当在下载程序时,如果誉丛知新程序的代码庆消、数据等信息与芯片上原有的程序、数据等信息在存储空间上存在冲突,J-Link会在下载程序之前先执行擦除 *** 作,以确保新程序能够正确地写郑升入芯片。

此程序编译完之后,下载到STM32的FLASH中去,

fun2的作用是把fun1所在page擦山皮帆除,并且把fun1()这句话替换成NOP

这样可能实现吗?

我试逗雹了很久,都不行

擦除只能擦除程序没握喊用到的page,一旦程序写到flash中,比如说这个程序占用了0x08000000~0x08002000,那么这一段是无论如何都擦写不掉的

只能擦写这后面的

程序

1、使用STM32CubeProgrammer软件,连接STM32开发板,点击Erase,擦除Flash;

2、点击Program,选择新的程序文件,点击Program,烧录新的程序;

3、点击Verify,校验烧录的程序是否正确;

4、点击Reset,重启STM32,新的程序就烧录成功了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12497339.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存