打印

STM8程序太大了,求优化的办法

[复制链接]
2160|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chrise23|  楼主 | 2016-2-13 22:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
songlaijun| | 2016-2-15 08:35 | 只看该作者
STVD这个编译器没听过,用IAR试试,会不会好点。

使用特权

评论回复
板凳
huafei123| | 2016-2-16 09:43 | 只看该作者
仔细审查你的代码,尽量多用局部变量,优化你的程序吧。

使用特权

评论回复
地板
mdk55555| | 2016-2-17 16:04 | 只看该作者
不是有个debug和relase模式么?你开启的是哪个模式呢

使用特权

评论回复
5
wahe2008| | 2016-2-19 15:02 | 只看该作者
尽量少用固件库,直接操作寄存器,代码尽量简洁,变量少用。我用stm8s903k3的时候也是遇到过,最后没办法所以改板用stm8s105k4了

使用特权

评论回复
6
maninman1981| | 2016-2-19 16:28 | 只看该作者
开启编译优化的选项试试,会不会变小

使用特权

评论回复
7
rmbass| | 2016-2-19 22:03 | 只看该作者
尽量用寄存器,不要用库,把库函数都删掉

使用特权

评论回复
8
lt1231| | 2016-2-20 10:51 | 只看该作者
rmbass 发表于 2016-2-19 22:03
尽量用寄存器,不要用库,把库函数都删掉

好像有个编译选项,自动删除没用的库函数的

使用特权

评论回复
9
jouney316| | 2016-2-21 16:47 | 只看该作者
Split+ Compact优化,可以最大程度减小你的代码。

使用特权

评论回复
10
单片机菜菜| | 2016-2-21 22:58 | 只看该作者
哪部分的内存超标了呢?变量还是程序呢?

使用特权

评论回复
11
麦克塔维什| | 2016-2-23 18:13 | 只看该作者
把字符串的这些加const就放在code中了,标志变量尽量用_bool实现。

使用特权

评论回复
12
zhangyi3312| | 2016-2-24 16:39 | 只看该作者
STVD有四种优化选项,你挨着切换试试。主要还是自己的程序要规划好。

使用特权

评论回复
13
jp_chen| | 2016-2-25 20:09 | 只看该作者
换IAR试试,IAR编译器应该做的好点,优化度高。

使用特权

评论回复
14
罗勋义| | 2016-2-25 20:26 | 只看该作者
zhangyi3312 发表于 2016-2-24 16:39
STVD有四种优化选项,你挨着切换试试。主要还是自己的程序要规划好。

程序写完,具体算法上要做好优化。比如switch比if要节省内存。

使用特权

评论回复
15
chrise23|  楼主 | 2017-4-18 19:40 | 只看该作者
lt1231 发表于 2016-2-20 10:51
好像有个编译选项,自动删除没用的库函数的

这个选项是什么呢,我没找到,用的是哪个编译器呢?

使用特权

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

本版积分规则

24

主题

153

帖子

1

粉丝