
这是我2012发在ednchina的一篇博文。 使用MDK 4.12和Jlink V8使程序在STM32F107的SRAM中运行 为调试程序,将程序下载到SRAM中进行调试的好处,就不再说了,请问谷哥和度娘。 下面上图,如何配置keil。 * F# f ^# s* z2 _: p- Z1、在keil中点击 ![]() ![]() 点击OK,退出。4 R0 ]& C7 ]. B# X( t" B 2、在keil的Target中,选择SRAM,如下图所示: ![]() 然后ALT+F7,打开“options for targets”。 3、选择“target”项,将其中的IROM1和IRAM1改为如下图所示:. d% Z3 G! N; r/ j) |. Y1 U ![]() 即将SRAM空间中48K用作代码空间,剩下的16K用作数据空间。 4、先中断上面的工作,不要退出。在你的项目文件夹中建立一个文本文件,将如下代码拷贝至此文件中,代码如下:* Z2 @1 @9 N8 a. E# Z /******************************************************************************/ /* RAM.INI: RAM Initialization File */ /******************************************************************************/9 o! S w* y8 m1 e8 c3 r, s // > // /******************************************************************************/: ]5 ^) q! Z* t' m: w) h% s& ] /* This file is part of the uVision/ARM development tools. */; Y/ f) Y1 \$ K: K( { D8 F /* Copyright (c) 2005-2007 Keil Software. All rights reserved. */ /* This software may only be used under the terms of a valid, current, */ /* end user licence from KEIL for a compatible version of KEIL software */ /* development tools. Nothing else gives you the right to use this software. */ /******************************************************************************/ FUNC void Setup (void) { SP = _RDWORD(0x20000000); // Setup Stack Pointer, D* V5 p" a, l# C PC = _RDWORD(0x20000004); // Setup Program Counter& h9 I9 C; E Q/ E% | _WDWORD(0xE000ED08, 0x20000000); // Setup Vector Table Offset Register. a. N7 s7 [: Q$ ?! B0 X7 k% s } : J. }: c" F9 f: X, j2 A9 i! i LOAD .\RVMDK\Temp\TempPro.axf INCREMENTAL // Download - w! i# [" N; z5 u% B Setup(); // Setup for Running g, main /*****************代码至此结束*************************************// x U' {; F. T+ Z# A3 I 在上面的代码中,红色字体要修改。在项目进行编译时会产生一个.axf文件,文件名一般默认为你的工程名,对于我的项目来说,是TempPro.axf,如下图: ![]() 将代码中的红色字体改为你的.axf文件所在的相对路径即可,所以我这里为.\RVMDK\Temp\TempPro.axf。 保存此文本文件退出,将文件改名为“DebuginRAM.ini”,包括文件名后缀。 5、接至第3步的工作,选择“debug”项,设置如下图所示: ![]() 在图中的红色方框中,找到我们在第4步中建立的“DebuginRAM.ini”文件。' V! D. u2 i4 D/ n6 |2 F! E: Q 6、点击“settings”,配置如下: ![]() 7、点击“flash download”项,配置如下: ![]() 红色方框中的数字要与我们在第三步填入的数字相同,点击OK退出。 8、点击“utilities”项,选择“settings”,设置如下图所示: ![]() ![]() 上图红色方框中的内容要与第7步一致。 9、keil的设置基本完成,在下载程序之前要将你的板子上的boot0,boot1选择至0,以使stm32f107从SRAM中启动。7 I+ l' W, W* J0 B1 q3 n/ i 10、编译好程序后,“ctrl+F5”即可下载程序了。 3 W: J l$ Y5 ~8 X |