原创 [博客大赛]MDK下代码的分段管理 续3

2014-8-18 17:23 1981 14 14 分类: MCU/ 嵌入式 文集: STM32浅谈

继续写点分段管理的问题。

设计思想主要是设计一个通用的BSP,固化后只需要修改APP代码就可以,这适用于远程升级的系统或是进行二次开发的系统。

考虑到编译器链接的时候会把没有使用的代码段(函数)自动优化掉,这样的话你的BSP就有可能有函数被优化(主要是目前的APP没有使用的函数)。如果你下次的APP调用了上一次没有使用的代码段(函数)的话,那整个BSP层就会重新编译——从而导致分段失败。

研究了几天MDK的帮助文档,找到了处理这种问题的两种方法:

1. 使用 __attribute__((used)) 定义函数
2. 使用 --keep *.o(*) 作为链接参数
 
这样保证编译出来的BSP是一个完成的函数库(起码对于自己的应用是完整的)。

文章评论0条评论)

登录后参与讨论
我要评论
0
14
关闭 站长推荐上一条 /2 下一条