Keil MDK3.20的stm32调试方法.doc

上传人:白大夫 文档编号:3253436 上传时间:2019-08-06 格式:DOC 页数:2 大小:16KB
返回 下载 相关 举报
Keil MDK3.20的stm32调试方法.doc_第1页
第1页 / 共2页
亲,该文档总共2页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Keil MDK3.20的stm32调试方法.doc》由会员分享,可在线阅读,更多相关《Keil MDK3.20的stm32调试方法.doc(2页珍藏版)》请在三一文库上搜索。

1、Keil MDK3.20的stm32调试方法1. 程序在RAM中运行要点:(1)程序的下载地址改到RAM空间中(2)程序的debug之前要设定SP,PC指针到Ram空间新建工程,选择STM32 的具体型号,我买的万利的开发板,选择stm32f103Vb。设定程序下载地址,如下图所示,IROM1的地址指向了STM32的ram空间。空间大小如何分配取决于自己的需求。本款处理器内部ram大小为20K,分配16K给只读区,4K给可读可写区。这样IROM设定的大小为0x4000,IRAM1的起始就变为0X20004000,大小只剩下0X1000。Debug标签选择ULINK1 Cortex Debugg

2、er(软件采用yjgyiysbCC兄crack方法)。不选Load ApplICaTIon at Start,在IniTIalizaTIon中加入启动脚本RAM.ini。RAM.ini中具体内容如下:FUNC void Setup (void) SP = _RDWORD(0x20000000); / Setup Stack PointerPC = _RDWORD(0x20000004); / Setup Program Counter_WDWORD(0xE000ED08, 0x20000000); / Setup Vector Table Offset RegisterLOAD XXX.axf

3、 INCREMENTAL / Download,红色代表工程文件名.axfSetup(); / Setup for Runningg, mainUTIlities下Update Target before Debugging不选这样添加后就可以在RAM中调试了。我们需要在代码中设置正确的中断向量表位置。中断向量表通常被放置在用户程序的开始,所以flash中运行时,向量表位于0x08000000处,而当代码被放置在SRAM中运行时,他的位置就成了0x20000000。在初始化NVIC时,我们可以放置如下代码,定义向量表的位置NVIC_SetVectorTable(0x20000000 , 0x0

4、);或NVIC_SetVectorTable(0x08000000 , 0x0);或工程选项中Debug项,Download选项卡中,去掉所有钩子,不下载代码到flash,这样就可以在RAM中调试程序了!2. Flash中调试新建工程后系统默认设定好IROM1为FLASH的地址和空间大小。只需要两步:1) 设定调试工具为ULINK1 CORTEX DEBUGGER,如下图所示,不需要设定起始脚本。2) 在Utility中设定选择ULINK1 cortex debugger,并设定编程算法。如下图所示。之后就可以FLASH调试了。硬件:万利的 EK-STM32F开发板,硬件去掉RS3,RS4 排阻,断开开发板本身的仿真器。软件:KEILMDK3.20+ULINK驱动替换文件。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1