• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STemWin无系统裸机例程编译后占用SRAM好大?

Key一哥 2018-09-17 浏览量:1543
用STemWin无系统裸机例程做一个东西,只用到了edit,graph,text这几个控件,其他的都删除了,但是编译后还是占用SRAM很大。有办法弄小点么?
Program Size: Code=107406 RO-data=55682 RW-data=1396 ZI-data=43252  
我用的是STM32F103RC,内容flash=256K SARM=64k 感觉已经快没SRAM用于后面自己的代码了。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 的确是,在malloc.c里面有给emwin分配内存的宏#define MEM_MAX_SIZE 默认是42K,修改就可以了。但是还得确保最少的内存够emwin使用。
    • 发布于 2018-09-29
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:11
  • 可能你用的层比较多,如果是单层会好一些
    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 程序有没有进行优化呢,在查一下,是不是emwin占用的,还是其他的程序占用的
    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 虽然只有几个控件,但相关交互的底层可能还有一些公共的依赖,这些是不能省略的啊。

    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 本来最基础的emwin例程占用RAM很大,正常,想要要RAM占用率小一点得把emwin进行阉割,而不是少调用一些控件
    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • RAM占用大不大是与你的界面设计有关的,一个复杂的界面,就会占用大量的RAM的
    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 正规步骤不能少的,尽量不要做的复杂,占用RAM尽量不要大
    • 发布于2018-09-18
    • 举报
    • 评论 0
    • 0
    • 0

  • emwin里面只要用到了它的API,库里面公共的东西就都会被调用,所以STM32F1不适合用这种图形库就是这个原因,RAM太小了
    • 发布于2018-09-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种GUI的库调用需要很大的RAM来操作,所以通常对RAM进行分割的处理
    • 发布于2018-09-25
    • 举报
    • 评论 0
    • 0
    • 0

  • EMWIN本身需要占用的内存就很多的,因为它是抽象层函数库,楼主不想占用这么多空间可以尝试直接刷显存,不用EMWIN。

    • 发布于2018-09-29
    • 举报
    • 评论 0
    • 0
    • 0

  • EMMIN这个GUI本身就会占用很大的内存,这是所有GUI的硬伤
    • 发布于2018-10-11
    • 举报
    • 评论 0
    • 0
    • 0

  • emwin这类图形库确实需要占用很大内存的,除非不用emwin自己实现。
    • 发布于2018-10-18
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STemWin无系统裸机例程编译后占用SRAM好大?