瑞萨RH850芯片在IAR和CS+编译环境下设置堆(heap)和栈(stack)的大小 |
您所在的位置:网站首页 › 瑞萨官网芯片手册在哪 › 瑞萨RH850芯片在IAR和CS+编译环境下设置堆(heap)和栈(stack)的大小 |
博主联系方式:QQ:1256153255 ,邮箱:[email protected] 点击这里了解RH850开发板 点击这里了解瑞萨E1仿真器 点击这里了解GHS Multi 在实际使用RH850开发的过程中,有时会需要调整芯片的堆栈空间大小。 对于RH850芯片,常用的编译器是IAR CS+( CC-RH)和GHS Multi,本文主要介绍在IAR和CS+编译器环境下如何设置堆栈的空间大小。 1、IAR for RH850对RH850芯片堆栈的设置 1.1、设置堆heap和栈stack1)右击工程→选择‘Options’ 1)打开cstart.asm,找到STACKSIZE STACKSIZE .set 0x200 .section ".stack.bss", bss .align 4 .ds (STACKSIZE) .align 4 _stacktop:其中的0x200即为stack的大小即512Bytes 2.2、验证stack的设置1)设置stack size 为0x200 STACKSIZE .set 0x200 .section ".stack.bss", bss .align 4 .ds (STACKSIZE) .align 4 _stacktop:2)编译,生成map文件,查看stack size 3)设置stack size 为0x400 STACKSIZE .set 0x400 .section ".stack.bss", bss .align 4 .ds (STACKSIZE) .align 4 _stacktop:4)编译,生成map文件,查看stack size 1)首先参考Renesas官网关于heap大小设置的介绍 http://tool-support.renesas.com/autoupdate/support/onlinehelp/csp/V4.01.00/CS+.chm/Compiler-CCRL.chm/Output/cd_Lib_func102.html https://renesasrulz.com/mcu-mpu/rl78/f/rl78-forum/19006/increase-heap-memory 2)查看.bss段的默认大小 3)设置heap size 为0x200 #include #define SIZEOF_HEAP 0x200 int _REL_sysheap[SIZEOF_HEAP>>2]; size_t _REL_sizeof_sysheap = SIZEOF_HEAP;
bss空间增量:0x2C8 - 0xC8 = 0x200 4)设置heap size 为0x400 #include #define SIZEOF_HEAP 0x400 int _REL_sysheap[SIZEOF_HEAP>>2]; size_t _REL_sizeof_sysheap = SIZEOF_HEAP;
bss空间增量:0x4C8 - 0xC8 = 0x400 疑问:为什么增加的heap空间会放到了.bss段,知道的大神请指教!!! |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |