电子工程师技术服务社区
- 社区首页
- 下载
- FLASH.rar
资料描述
通过查手册发现stm32 flash的烧写次数比较低,有的是1k,有的是10k,尤其是新手烧录的次数比较多,可能用不了多少时间就会把stm32烧坏,低端的10元以下还可接受,但像f4这种高端的价格比较贵的就很可惜了,因此解决这个问题就显得很迫切。
通过查网上的教程发现各种版本都有,但普遍是f1的,对f0,f4等系列的不多,因此研究出f0,f4等系列的就非常必要了,自己也研究了几天,现在总结出来奉献给大家。
1.mdk我用的是keil uvision5,先打开魔术棒工具,选择里面的target,像我用的f0系列的有16k的sram,打算用一半用作程序存储,另一半用于ram,我的配置如下:
点确认后设置完成。
2.然后再点开debug选项卡,点st-link debugger的settings按钮,进入里面配置:
3.点开后选择flash download按钮配置,首先配置ram for algorithm,配置如图所示:
4.然后单击stm32f0xx 128kb flash 在下面的 :art:里配置如下:
5.选中do not erase,不选中的话在ram中调试的时候仍然会擦除flash,可能仍然影响flash的寿命:
6.点确定后配置完成,然后需要的是ram里的启动文件,网上有很多,其实我们可以在keil里的安装文件里找到,在keil的安装文件里搜索dbg_ram.ini,搜到后复制出来待用;
7.debug模式下选择st-link debugger下导入dbg_ram.ini:
注意dbg_ram.ini里的
load %l incremental // load the application
是你生成的axf文件的路径,不设置也可以用,比如我的设置是:load c:usersstm32desktopg.axf incremental
8.导入成功后,调用debug,试验发现程序已经是在0x20000000的起始位置开始下载程序了;
9.为了验证是否真的是在ram下载程序,写了两