Keil MDK 3.5 Jlink V7 在STM32中SRAM 调试成功方法成功
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图解Keil MDK 3.5/UV4beta Jlink V7 在STM32中SRAM 调试成功方法成功
目的是避免FLASH擦写次数的限制,和避免新手学习很快让MCU结束生命。
以本人STM32F103RBT6为例,128K flash,20K SRAM,借鉴前人ULINK下调试的方法。
把内存分为16K用做FLASH,4K用做内存使用,这里以GPIO点亮LED为例子,项目为GPIO_OUT。
1、copy Keil安装目录下,例如C:\Keil\ARM\Boards\Keil\MCBSTM32\STLIB_Blinky中的RAM.ini
到项目目录,然后双击GPIO_OUT.uvproj,启动Keil。
2、单击启动下图对话框,在Project Targets一项单击New(Insert)按钮,增加一个目标,
命名为SRAM,然后OK。
3、然后再Select Target中选择SRAM。
4、左侧项目栏中选择SRAM,单击右键选择Options for Target “SRAM”,打开选项对话框。
5、如上图所示,在target选项中修改IROM1的Start值为:0x20000000,Size:0x4000
IRAM1的Start值为:0x20004000,Size:0x1000;
即内存分为16K用做FLASH,4K用做内存使用。
6、OutPut选项卡中也选中Create HEX File,如下图所示。
7、在Debug选项中仿真器选择Cortex-M3 J-LINK,Initialization File中点击Edit按钮选择刚
才copy过来的RAM.ini文件,取消Load Application at Startup复选框,设置如下:
并点击仿真器一栏,Settings按钮,进一步设置,如下图,注意Debug选项中Interface中选择USB,
如下图所示,在Flash Download中配置,选中Do not Erase,在RAM for Algorithm中Start
设置为0x20004000,Size设置为0x1000,设置STM32F10x Med-density Flash的地址Start:0x20000000,size:0x00004000,点击OK。
注意:如果在Programming Algoritm中没有STM32F10x Med-density Flash,就单击Add按钮添加,然后修改即可。
8、如下图所示,在选项设置对话框中Utilities中,Use Target Driver for Flash Programming
中选择Cortex-M3 J-LINK,并点击setting进一步设置,
可以看到设置同第7步中一样,不再更改。
9、到此为止设置完成,开始调试。
10、开始调试,重建项目(重新编译)。
11、然后启动Start/Stop Debug Session(或Crtl+F5),开始调试,进入调试模式后,单
击Run按钮或F5运行。
12、注意:再次过程中不要点击Flash菜单下面的下载。
13、最后记住几个数字:
0x20000000 为内部SRAM的起始地址
0x4000 为16K RAM大小,模拟FLASH
0x20004000 设定的4K大小RAM的起始地址,模拟RAM
0x1000 设定的4K大小RAM。