多内存管理问题

发布于 2019-08-23 12:52:27
我想把STM32L476 的SRAM1和SRAM2合并到一起使用,96K + 32K, 参照手册说打开RT_USING_MEMHEAP_AS_HEAP, 并且在初始化一个新的堆即可。
当我初始化第二个堆SRAM2时程序就跑不起来, 如果只初始化原生SRAM1是可以运行的. 不知道欠缺了什么操作 ???


QQ截图20190823124918.png
3.png
2.png
1.png

查看更多

关注者
0
被浏览
462
4 个回答
wuhanstudio
wuhanstudio 2019-08-27
如果輸入 free 可以看到新的 heap2 嗎?
13006596872
13006596872 2019-12-09
[img]C:\Users\CK\Desktop\360截图20191209131828385.jpg[/img]
env配置好就可以,选择多块内存管理
tjrong
tjrong 2019-12-09

#define STM32_SRAM1_START 0x10000000
#define STM32_SRAM1_SIZE 64* 1024
#define STM32_SRAM1_END (STM32_SRAM1_START + STM32_SRAM1_SIZE)
#endif

static int CCRAM_Init(void)
{
#ifdef RT_USING_MEMHEAP_AS_HEAP
static struct rt_memheap _heap1;
rt_memheap_init(&_heap1,"heap1",(void *)STM32_SRAM1_START,STM32_SRAM1_SIZE);
#endif
return 0;
}
INIT_PREV_EXPORT(CCRAM_Init);

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友