//mem1内存参数设定.mem1完全处于内部SRAM里面.
#define MEM1_BLOCK_SIZE 32 //内存块大小为32字节
#define MEM1_MAX_SIZE 100*1024 //最大管理内存 100K
#define MEM1_ALLOC_TABLE_SIZE MEM1_MAX_SIZE/MEM1_BLOCK_SIZE //内存表大小
//mem2内存参数设定.mem2的内存池处于外部SRAM里面
#define MEM2_BLOCK_SIZE 32 //内存块大小为32字节
#define MEM2_MAX_SIZE 960 *1024 //最大管理内存960K
#define MEM2_ALLOC_TABLE_SIZE MEM2_MAX_SIZE/MEM2_BLOCK_SIZE //内存表大小
//mem3内存参数设定.mem3处于CCM,用于管理CCM(特别注意,这部分SRAM,仅CPU可以访问!!)
#define MEM3_BLOCK_SIZE 32 //内存块大小为32字节
#define MEM3_MAX_SIZE 60 *1024 //最大管理内存60K
#define MEM3_ALLOC_TABLE_SIZE MEM3_MAX_SIZE/MEM3_BLOCK_SIZE //内存表大小
上述是例程中的参数设定,从mem2可以看出最大内存管理为960k byte,但是板子上用的sram为512*16bit的也就是 1024k byte,那为什么这里是960k呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
内存里 堆和栈有固定的地址区域吗?
还是说,如果在内存里你定义的全是局部变量,那么内存里就全是栈,
如果全是用malloc申请的空间,那么内存里全是堆,
那么是否可以认为,堆和栈只是对特定申请内存方式的一个叫法,在内存中没有固定的地址区域?
望指教。
网站有bug,把你答案设置为正确答案后,上面显示你的答案发表于2小时前,明明才几分钟。 唉,多嘴了
一周热门 更多>