打印
[STM8]

关于STM8的固件库函数占用过多FLASH的问题~

[复制链接]
5508|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
最近开始接触STM8,发现他的固件库还是相当好用的。
但有一个很大的缺点,有的库函数一调用,就会占用很多FLASH(几千字节),不知道这种情况有没有解决的办法。。不然只能老老实实配置寄存器了。。
沙发
FAQ| | 2014-4-9 21:47 | 只看该作者
刚开始入门用固件库这样有助于尽快熟悉资源使用方法。后面熟练就须改用直接操作寄存器了

使用特权

评论回复
板凳
FAQ| | 2014-4-9 21:51 | 只看该作者
本帖最后由 FAQ 于 2014-4-9 21:53 编辑

固件库里面的例子很好。不看例子直接用寄存器操作感觉很困难,总是容易丢三落四的,每次都会有漏配置的

使用特权

评论回复
地板
1061zou|  楼主 | 2014-4-10 08:04 | 只看该作者
FAQ 发表于 2014-4-9 21:47
刚开始入门用固件库这样有助于尽快熟悉资源使用方法。后面熟练就须改用直接操作寄存器了 ...

嗯,如果库函数能够占用空间少一点就完美了

使用特权

评论回复
5
拿起书本| | 2014-4-10 09:29 | 只看该作者
深有同感,我用他的固件库编译出来的程序很大的,很占flash。优化都是最高级的,也不知道有没有什么好的办法。

使用特权

评论回复
6
1061zou|  楼主 | 2014-4-10 14:54 | 只看该作者
拿起书本 发表于 2014-4-10 09:29
深有同感,我用他的固件库编译出来的程序很大的,很占flash。优化都是最高级的,也不知道有没有什么好的办 ...

是啊,占用空间太大了,不知道可不可以修改库函数。

使用特权

评论回复
7
huzi2099| | 2014-4-10 15:22 | 只看该作者
1061zou 发表于 2014-4-10 14:54
是啊,占用空间太大了,不知道可不可以修改库函数。


库占用存储空间大的原因是包含了众多没有用到的函数
keil for arm
options ->c/C++->钩选One ELF....
每函数一个段,可解决

使用特权

评论回复
8
1061zou|  楼主 | 2014-4-10 16:02 | 只看该作者
huzi2099 发表于 2014-4-10 15:22
库占用存储空间大的原因是包含了众多没有用到的函数
keil for arm
options ->c/C++->钩选One ELF....

有道理,我想也是这个原因。
我把库函数里用不到的函数删除后占用空间变小了。
但我用的是STM8,使用STVD+COMIC开发环境,找了下,有相关设置,可以直接把不用的函数自动优化掉。

使用特权

评论回复
9
1061zou|  楼主 | 2014-4-10 16:04 | 只看该作者
拿起书本 发表于 2014-4-10 09:29
深有同感,我用他的固件库编译出来的程序很大的,很占flash。优化都是最高级的,也不知道有没有什么好的办 ...

看看是不是 7楼说的问题

使用特权

评论回复
10
1061zou|  楼主 | 2014-4-10 16:16 | 只看该作者
问题解决了!可以设置一下,使编译器不编译未使用的函数。

不错不错,stm8真好用,就是编译器差一点~~

使用特权

评论回复
11
光晔秋秋| | 2015-5-21 10:18 | 只看该作者
MARK下

使用特权

评论回复
12
desertsailor| | 2015-5-21 22:07 | 只看该作者
根据需要精简掉一些没用到的函数

使用特权

评论回复
13
最后的战役| | 2015-7-30 08:51 | 只看该作者
顶10楼答案,我之前也遇到这个问题,后来在网上找到这个方法!

使用特权

评论回复
14
lein2006| | 2015-10-12 21:15 | 只看该作者
赞一个,太棒啦!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:<img src="static/image/smiley/comcom/3.gif" class="vm">

33

主题

237

帖子

1

粉丝