大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法。 最近和同事在讨论一个客户案例,客户 APP 工程是基于 IAR 开发环境,客户希望将工程里尽可能多的代码都重定向到 RAM 里执行,仅留必要或者指定的源文件代码在 Flas
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法。
最近和同事在讨论一个客户案例,客户 APP 工程是基于 IAR 开发环境,客户希望将工程里尽可能多的代码都重定向到RAM里执行,仅留必要或者指定的源文件代码在Flash中执行。这个需求和痞子衡旧文《在IAR下将关键函数重定向到RAM中执行的方法》实现正好相反。正常需求都是指定一些代码重定向到RAM,客户这次却是要保留一些指定代码在Flash中,其余全部都重定向到RAM。
客户的这个需求原则上我们还是可以用老方法去做,即在 IAR 链接文件里将除了指定源文件外的其它 object 全部加入 initialize by copy 语句里,或者直接代码里对相关函数加 __ramfunc 或者 section 属性,但显然这种方式手工活太多比较繁琐,有没有更人性化的方式呢?当然有!这就是痞子衡今天要聊的话题:
小编推荐阅读
- Note 1: 阅读本文前需要对 《IAR链接文件(.icf)》 、 《IAR映射文件(.map)》 这两种文件有所了解。
- Note 2: 本文使用的 IAR EWARM 软件版本是 v9.50.1。