[STM8] 关于在IAR中RAM 和FLAH的使用

[复制链接]
15751|13
 楼主| alanvi 发表于 2013-8-19 16:11 | 显示全部楼层 |阅读模式
本帖最后由 alanvi 于 2013-8-19 16:18 编辑

我用的是STM8S103f3   8K Flash  1K RAM 640字节的E2PROM
  编译后报错
  unable to allocate space for sections/blocks with a total estimated minimum size of 0x1fc9 bytes in <[0x008000-0x009fff]> (total uncommitted space 0x1f80).

空间使用如下
  7 323 bytes of readonly  code memory
     936 bytes of readonly  data memory
     577 bytes of readwrite data memory (+ 69 absolute)

根据查到的信息看 应该是程序溢出

我有3个问题想请教下诸位
1.是不是 readonly  code memory  + readonly  data memory = FLASH    readwrite data memory = RAM?   
   所以我的FLASH用了7323 + 936 = 8259字节  >   8 * 1024 = 8192;所以报错
2.请问IAR 里面有没有类似STVD 的优化设置?
   如果有的话请问在哪设置。搜索了下百度 好像没类似功能
3.哪位大神能够指点下 关于程序优化的建议  
   
  恳请诸位帮忙  不胜感谢
hkcj 发表于 2013-8-19 19:00 | 显示全部楼层
不是很了解   楼主   帮你顶一个   看看别人的意见   应该有好的解决方法
JasonWangFAE 发表于 2013-8-20 08:45 | 显示全部楼层
是不是 readonly  code memory  + readonly  data memory = FLASH    readwrite data memory = RAM?   
   所以我的FLASH用了7323 + 936 = 8259字节  >   8 * 1024 = 8192;所以报错
<--YES
 楼主| alanvi 发表于 2013-8-21 09:30 | 显示全部楼层
..额  多谢解答
outstanding 发表于 2013-8-21 09:50 | 显示全部楼层
这么大的代码?
 楼主| alanvi 发表于 2013-8-21 18:43 | 显示全部楼层
额 稍微大点
通过程序结构上的优化现在是
  6 318 bytes of readonly  code memory
    961 bytes of readonly  data memory
    573 bytes of readwrite data memory (+ 69 absolute)
不过别人在精简指令集的环境下  用4K 不到就完成了。太厉害了
ZBCC2530 发表于 2013-8-21 18:53 | 显示全部楼层
本帖最后由 ZBCC2530 于 2013-8-21 18:54 编辑

优化设置:
Image0882.JPG
zjxcml 发表于 2013-8-21 23:36 | 显示全部楼层
呵呵,不太懂
食肉狼 发表于 2013-8-29 16:20 | 显示全部楼层
值得学习,顶一下优化设置的大神
d865841995 发表于 2015-5-10 14:41 | 显示全部楼层
0x1FC9=8137>7323+936这是为什么?
ccitlad 发表于 2016-1-4 13:54 | 显示全部楼层
JasonWangFAE 发表于 2013-8-20 08:45
是不是 readonly  code memory  + readonly  data memory = FLASH    readwrite data memory = RAM?   
   ...

错误的吧  FLASH应该是readwrite data memory  + (另外一个我不确定)

只是readwrite data memory  是占用flash的 !
木子不二 发表于 2017-1-22 14:32 | 显示全部楼层


   IAR ELF Linker V1.40.1.50106 for STM8
   Copyright 2010-2013 IAR Systems AB.
Error[Lp011]: section placement failed
          unable to allocate space for sections/blocks with a total estimated minimum size of 0x4a0 bytes in <[0x000000-0x0003ff]> (total uncommitted space 0x2f0).
          Uncommitted:
            [0x000000-0x0000ff]:  0xf0
            [0x000100-0x0003ff]: 0x200

  1 565 bytes of readonly  code memory
  3 413 bytes of readonly  data memory
  1 456 bytes of readwrite data memory (+ 20 absolute)


我的空间才占6434,怎么也报错
mugua521 发表于 2017-8-4 08:29 | 显示全部楼层

按照这位大神的方法完美解决。但是比较好奇的是,这样的优化对程序执行是否有影响?
henglin 发表于 2017-9-30 13:05 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

28

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部