[STM32F1] 可以通过ram bootloader勾出程序吗

[复制链接]
1283|7
 楼主| FAQ 发表于 2017-11-7 20:24 | 显示全部楼层 |阅读模式
可否通过下面两个步骤将flash中的数据勾出来?

1,通过debug接口,将一段bootloader传到ram中
2,运行ram中的bootloader程序,把flash内的数据通过debug口传出来。


设置了选项字节里的保护不知道能不能这样子勾出来。

heisexingqisi 发表于 2017-11-7 21:44 | 显示全部楼层
可以了,你这个BootLoader就不是BootLoader了。
一路向北lm 发表于 2017-11-7 21:46 | 显示全部楼层
可以的,不是很麻烦,可以尝试下。
 楼主| FAQ 发表于 2017-11-7 21:56 | 显示全部楼层
heisexingqisi 发表于 2017-11-7 21:44
可以了,你这个BootLoader就不是BootLoader了。

我的意思是只是临时用一下的钩子程序,可以实现这功能吗
airwill 发表于 2017-11-7 22:37 | 显示全部楼层
不可能, 因为在 RAM 启动方式, FLASH 接口是被关闭的
 楼主| FAQ 发表于 2017-11-7 23:06 | 显示全部楼层
本帖最后由 FAQ 于 2017-11-7 23:09 编辑
airwill 发表于 2017-11-7 22:37
不可能, 因为在 RAM 启动方式, FLASH 接口是被关闭的

实验测试结果:
1,没有选项字节都保护的时候是可以读到flash内容的。
2,打开选项自己都保护以后,依然可以正常加载程序到RAM中并且运行程序(做除了和flash相关的,以外任务,比如纯粹的数学计算),只是不能对flash区域进行读和写操作,一旦对flash进行读写操作就会进入void HardFault_Handler(void);中断函数中。
airwill 发表于 2017-11-8 06:37 | 显示全部楼层
其实这一点, 手册上就有明确说明
 楼主| FAQ 发表于 2017-11-8 09:24 | 显示全部楼层
airwill 发表于 2017-11-8 06:37
其实这一点, 手册上就有明确说明

是参考手册里面说的吗,我没注意到。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

FAQ

233

主题

2050

帖子

9

粉丝
快速回复 在线客服 返回列表 返回顶部