STM32调试:Keil MDK 3.5 + Jlink V8 SRAM调试步骤

5星 · 超过95%的资源 需积分: 50 12 下载量 154 浏览量 更新于2024-09-19 收藏 363KB PDF 举报
"该资源主要介绍了如何在Keil MDK 3.5环境下,结合Jlink V8调试器,对STM32F103RBT6芯片进行SRAM调试,以避免频繁擦写FLASH并简化新手的学习过程。" 本文将详细阐述如何使用Keil MDK 3.5集成开发环境,配合Jlink V8仿真器,进行STM32微控制器的SRAM调试。这种方法允许开发者在不频繁擦写FLASH的情况下进行程序调试,保护MCU的寿命,并以GPIO控制LED为例说明具体操作步骤。 首先,从Keil安装目录复制`RAM.ini`文件到项目目录,并启动Keil MDK 3.5。接着,创建一个新的目标(Target),命名为“SRAM”。选择这个新目标后,进入其属性设置。 在“Target”选项中,我们需要调整IROM1和IRAM1的起始地址和大小。IROM1的Start值设为0x20000000,Size设为0x4000,表示16KB的FLASH空间;IRAM1的Start值设为0x20004000,Size设为0x1000,即4KB的SRAM用于运行代码。 在“Output”选项卡中,勾选“Create HEX File”,以便生成HEX文件供后续使用。而在“Debug”选项中,选择Cortex-M3兼容的J-Link仿真器,并指定初始化文件为刚才复制的`RAM.ini`。同时,取消“Load Application at Startup”的复选框,防止自动加载到FLASH。 进一步设置仿真器的参数,确保“Interface”选择USB连接,并在“Flash Download”配置中,选择不擦除(Donot Erase)选项。在“RAM for Algorithm”部分,设定Start地址为0x20004000,Size为0x1000,对应我们分配的4KB SRAM区域。对于STM32F10x Medium-density Flash,设置Start地址为0x20000000。 至此,调试环境配置完成。开发者可以编写GPIO控制LED的程序,编译后生成的HEX文件将被加载到SRAM中执行,而不会影响到FLASH中的固件。通过这种方式,不仅避免了反复擦写对FLASH的影响,还使得调试过程更为高效和便捷,特别适合STM32初学者进行实践操作。