ulink下在ram中调试stm32的方法

1.在项目文件夹 新建 RAM.ini 
---------------------------------------------------------------- 
FUNC void Setup (void) { 

  SP = _RDWORD(0x20000000);          // 堆栈指针 
  PC = _RDWORD(0x20000004);          // PC 
  _WDWORD(0xE000ED08, 0x20000000);   // 中断向量偏移地址 


LOAD ./basic.axf INCREMENTAL      // Download,.axf 根据自己的文件名和目录修改 

Setup();                             // 调用Setup(); 

g, main                             //跳转到main 

----------------------------------------------------------------------copy 以上。 

2.把程序起始地址改成RAM的起始地址。 

  

  

#ifdef  VECT_TAB_RAM  
  /* Set the Vector Table base location at 0x20000000 */ 
  NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); 
#else  /* VECT_TAB_FLASH  */
  /* Set the Vector Table base location at 0x08000000 */ 
  NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);   
#endif

永不止步步 发表于04-15 10:09 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67417个|学分:363741个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号