STM32 MDK 工程中能否在源码中定义IROM1的起始地址?

2019-12-16 22:37发布

做一个可以IAP升级的工程,直接调试时需要在工程选项中将IROM起始地址设置回0x8000000,调试完成后再设置回0x8002000,
这样切换感觉挺麻烦,能否在源码中设置宏或者什么来设置这个地址?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
zdd563
1楼-- · 2019-12-16 23:12
沙发,据我了解是不能的
jiaowoxiaolu
2楼-- · 2019-12-17 02:55
什么都不用改,要调试的话在工程设置debug选项卡里面有一个initalization file 这个,自己写个脚本初始化一下pc就行了
ttyyuuio
3楼-- · 2019-12-17 07:57
有 iap boot的时候 ,不影响debug, 跑完IAP 就能跑到当前程序中调试
hwh1328
4楼-- · 2019-12-17 09:40
 精彩回答 2  元偷偷看……
rayt2012
5楼-- · 2019-12-17 11:19
jiaowoxiaolu 发表于 2018-10-9 16:58
什么都不用改,要调试的话在工程设置debug选项卡里面有一个initalization file 这个,自己写个脚本初始化一 ...

请教下如何设置? 有没有样本文件
styleno1
6楼-- · 2019-12-17 14:05
有几种方法,Initialization File算其中一种,例:

  1. // Start at 0x08001400

  2. FUNC void Setup (void) {
  3.   SP = _RDWORD(0x08001400);          // Setup Stack Pointer
  4.   PC = _RDWORD(0x08001404);          // Setup Program Counter
  5. }

  6. Setup();                             // Setup for Running
复制代码

一周热门 更多>