LVGL内存分配管理如何与sct文件协同高效管理?

摘要:引言 LVGL 内存管理,可选默认 lvgl 管理方式,也可选自定义管理方式。 LVGL 内存消耗 这里说的内存管理,就是指“LVGL 要管理的内存”。 这个内存池不能分配的过大,过大则图形缓冲区或其他被分配的位置就可能不足;也不能过小,过
引言 LVGL 内存管理,可选默认 lvgl 管理方式,也可选自定义管理方式。 LVGL 内存消耗 这里说的内存管理,就是指“LVGL 要管理的内存”。 这个内存池不能分配的过大,过大则图形缓冲区或其他被分配的位置就可能不足;也不能过小,过小则可能分配给某些控件的内存不足。所以需要合理配需要管理的内存池的大小 内存管理文件添加 在工程中选择一个合适的文件夹下添加 malloc.c 和 malloc.h 文件,方便添加管理代码。 由于我使用的 arm 为 stm32h743iit6 型号的单片机,其内存分布如下 sct 文件所示: 其默认未初始化的变量都是放到 AXI SRAM 区的,我们一般也是将 lvgl 需要管理的内存放到这个区域,所以在后面 malloc.c 文件中不需要 _attribute_,直接为默认内存即可。 这个内存管理文件原本是正点原子写来管理整个工程的内存的,但是由于我们已经使用了 sct 静态内存管理的方法,所以这里的内存管理文件仅仅当作 lvgl 的内存管理文件使用了,所以需要初始化的内存区域也只有内部的 SRAM 区,外部 SDRAM 的管理用 sct 文件即可。
阅读全文