我正在使用MCB2300(使用LPC2378处理器)并使用keil uVision4。在我的程序中,我使用malloc()函数创建动态内存。由于所有动态内容都将存储在堆中,因此我需要确保分配所需的堆大小。我的启动文件(LPC2300.s)中堆的默认值是0x00000800。在我的应用程序中,我正在读取图像(bmp格式)并将像素值存储到矩阵中,并根据输入图像的大小动态创建矩阵。我在启动文件中可以设置的最大堆值是0x000072FF。对于堆的这个值,我能够成功读取44 x 33的图像。超出此大小的内存不会被分配。我需要至少有100个×100的尺寸来读取图像我的可用RAM为32K在Keil中提供更多堆
这是我的输出值后,我编译我的代码
程序大小:代码= 30664 RO-数据= 1220 RW-data = 132 ZI-data = 37628
如何提供额外的堆?
是否可以在SD/MMC卡或为LPC2378提供的外部存储库上存储堆内存。请帮我解决这个问题