ulink下在ram和flash中调试stm32的方法

Keil MDK3.20 在ULINK下调试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 Debugger(软件采用yjgyiysbcc兄crack方法)。不选Load Application at Start,在Initialization中加入启动脚本RAM.ini。



 


RAM.ini中具体内容如下:


FUNC void Setup (void) {


  SP = _RDWORD(0x20000000);          // Setup Stack Pointer


  PC = _RDWORD(0x20000004);          // Setup Program Counter


  _WDWORD(0xE000ED08, 0x20000000);   // Setup Vector Table Offset Register


}



LOAD XXX.axf INCREMENTAL      // Download,红色代表工程文件名.axf 


Setup();                             // Setup for Running



g, main


 


Utilities下Update Target before Debugging不选




 



这样添加后就可以在RAM中调试了。


 


2.       Flash中调试


新建工程后系统默认设定好IROM1为FLASH的地址和空间大小。只需要两步:


1)  设定调试工具为ULINK1 CORTEX DEBUGGER,如下图所示,不需要设定起始脚本。




2)  在Utility中设定选择ULINK1 cortex debugger,并设定编程算法。如下图所示。






之后就可以FLASH调试了。


 


硬件:万利的 EK-STM32F开发板,硬件去掉RS3,RS4  排阻,断开开发板本身的仿真器。


软件:KEIL MDK3.20+ULINK驱动替换文件。


仿真器:ULINK




http://bbs.ednchina.com/BLOG_ARTICLE_92176.HTM#

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值