IAR中如何解决i.MXRT分散链接工程在下载调试时的问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2720个文字,预计阅读时间需要11分钟。
各位好,我是神子辈,是正宗搞技术的神子。今天神子辈分享的是+IAR环境下无法直接下载调试i.MXRT分散链接工程的解决方案。+分散链接与加载一脉相承,是嵌入式领域的难题,新手的退避之路。
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR环境下无法直接下载调试i.MXRT分散链接工程的解决方案。
分散链接与加载一直是嵌入式领域比较劝退新手的难题,在恩智浦 i.MXRT 系列为代表的多存储器架构的 MCU 上,分散链接问题体现得尤为明显,毕竟你在链接应用程序各种段(section)时可能会面对包括内部 ITCM/DTCM/OCRAM 和外部 Flash/SDRAM/PSRAM/HyperRAM 等多种存储器空间选择。
虽然存储器空间选择很多,但是一个最终可离线启动的 i.MXRT 程序(即能被下载进外部非易失存储器,且能被 BootROM 加载启动)其 readonly 段应该是一段连续的数据(SREC/HEX格式镜像文件里仅能包含一段空间地址),即要链接在一个主存储器空间里,这也意味着其它链接在非主存储器空间的 .text 段应该使用重定向方法来实现,不可直接原地链接,参考痞子衡文章 《IAR下将源文件代码重定向到任意RAM中的方法》。
最近有一个 i.MXRT1060 客户,他们就遇到了分散链接工程调试问题,工程 readonly 段被直接分散链接到了两个不同的外部存储器空间,没有用重定向方法,这虽然不符合离线启动要求,但是在 IAR 下直接下载调试也会报错,这是怎么回事?
一、引出客户问题我们再进一步描述客户工程分散链接问题,下图包含了 i.MXRT 架构下程序段的全部链接选择,根据这些选择组合,我们能产生多种不同的工程链接文件。
本文共计2720个文字,预计阅读时间需要11分钟。
各位好,我是神子辈,是正宗搞技术的神子。今天神子辈分享的是+IAR环境下无法直接下载调试i.MXRT分散链接工程的解决方案。+分散链接与加载一脉相承,是嵌入式领域的难题,新手的退避之路。
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR环境下无法直接下载调试i.MXRT分散链接工程的解决方案。
分散链接与加载一直是嵌入式领域比较劝退新手的难题,在恩智浦 i.MXRT 系列为代表的多存储器架构的 MCU 上,分散链接问题体现得尤为明显,毕竟你在链接应用程序各种段(section)时可能会面对包括内部 ITCM/DTCM/OCRAM 和外部 Flash/SDRAM/PSRAM/HyperRAM 等多种存储器空间选择。
虽然存储器空间选择很多,但是一个最终可离线启动的 i.MXRT 程序(即能被下载进外部非易失存储器,且能被 BootROM 加载启动)其 readonly 段应该是一段连续的数据(SREC/HEX格式镜像文件里仅能包含一段空间地址),即要链接在一个主存储器空间里,这也意味着其它链接在非主存储器空间的 .text 段应该使用重定向方法来实现,不可直接原地链接,参考痞子衡文章 《IAR下将源文件代码重定向到任意RAM中的方法》。
最近有一个 i.MXRT1060 客户,他们就遇到了分散链接工程调试问题,工程 readonly 段被直接分散链接到了两个不同的外部存储器空间,没有用重定向方法,这虽然不符合离线启动要求,但是在 IAR 下直接下载调试也会报错,这是怎么回事?
一、引出客户问题我们再进一步描述客户工程分散链接问题,下图包含了 i.MXRT 架构下程序段的全部链接选择,根据这些选择组合,我们能产生多种不同的工程链接文件。

