![cathy的头像 cathy的头像](https://cdn.eetrend.com/files/styles/picture200/public/letter-avatars/u-593.png?itok=XTs2kpZ8)
前篇回顾
瑞萨RA MCU如何从指定地址开始调试代码(一)之e2 studio篇
在上次的连载中,我们介绍了在e2 studio中如何将project进行地址偏移,然后进行调试的操作步骤。此次的连载中,我们会介绍在Keil和IAR中如何进行相应的设置,以达到从指定地址开始调试代码的目的。
对于Arm芯片,要求起始地址0开始放置初始堆栈指针,复位向量表等必备内容,所以如果0地址处为全FFh,则无法调试代码。
为从指定地址开始调试代码,可以在IDE中重新指定MCU运行所需的地址偏移(Initial stack pointer和Initial program counter)。本次以Keil和IAR为例分别进行说明。
首先介绍Keil中的配置:
1.linker script脚本文件进行修改(代码编写阶段)
修改linker script脚本,以memory_regions.scat文件为例,FLASH_START是代码进行编译时,基础的偏移地址,默认为0,根据要求修改为application的目标偏移地址,如0x4000。重新编译工程,检查编译生成的srec文件或mot文件,确认文件起始地址为0x4000。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247958-1.png)
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247959-2.png)
2.Debug Configuration的设置(代码调试阶段)
在Keil设定中,首先修改Linker>R/O Base,设定为0x4000。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247960-3.png)
将如下内容另存为一个*.ini文件(如app_0x4000.ini),放在Project目录下的script文件夹中。
FUNC void Setup (void) { SP = _RDWORD(0x00004000); // Setup Stack Pointer PC = _RDWORD(0x00004004); // Setup Program Counter _WDWORD(0xE000ED08, 0x00004000); // Setup Vector Table Offset Register } LOAD Objects\RA4M2_TE_app.axf INCREMENTAL // Download Setup(); // Setup for Running
在下图中指向该*.ini文件。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247961-4.png)
调试效果如下图所示,代码在跳到main()函数时,地址在0x4000+处。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247962-5.png)
接下来介绍IAR中的配置:
1.linker script脚本文件进行修改(代码编写阶段)
修改linker script,以memory_regions.icf文件为例,FLASH_START是代码进行编译时,基础的偏移地址,默认为0,根据要求修改为application的目标偏移地址,如0x4000。重新编译工程,检查编译生成的srec文件或mot文件,确认文件起始地址为0x4000。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247963-6.png)
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247965-7.png)
2.Debug Configuration的设置(代码调试阶段)
修改Debugger>Extra Options中的设定,如下图所示。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247966-8.png)
代码调试效果如下图所示,跳到main()函数时,地址在0x4000+处。
![“瑞萨RA](http://mcu.eetrend.com/files/2022-03/wen_zhang_/100559035-247967-9.png)
未完待续......
来源:电子创新网张国斌
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。