LVGL8 如何实现从外部SD卡中加载图片到SDRAM中,然后从SDRAM中搬运数据显示呢?

LVGL8 如何实现从外部SD卡中加载图片到SDRAM中,然后从SDRAM中搬运数据显示呢?

可以通过设置这个宏实现,代码位置: https://github.com/lvgl/lvgl/blob/release/v8.3/lv_conf_template.h#L55

目前就是这样做的。目前测试下来,img做了一个旋转的功能。占用的CPU的%就非常大了。不知道啥情况。

还有一个:目前用的是PNG格式的图片,加载,然后开启了缓存 (#define LV_IMG_CACHE_DEF_SIZE)。这样是不是就可以认为是在外部SDRAM了。(LV_IMG_CACHE_DEF_SIZE这个参数的定义是缓存的个数还是字节的大小,目前了解认为是个数,不知道对不对)。

还有遇到开启双缓冲,一直卡在

这里。

帮忙指导指导

图片旋转占用大正常,动画本来就是占用cpu

老师您好,烦请您帮忙稍详细指导一下。

我目前用的是外部的图片数据,png格式的。类似于如下图这样加载好多张图片、图标显示。

但是,目前遇到的问题是,我又好多界面,需要切换,每当切换切换的时候,又是从外部SD卡中通过路径读取图片,比较慢,卡顿严重。

目前,想请教想,能否我上电第一次,把所有的图片数据都加载到SDRAM中,随后的操作都从SDRAM中拿数据,可能会快一些。就比如,我的PNG格式的图片,如果搬到SDRAM中之后,LVGL从SDRAM中拿数据呢?

万分感谢!!!!希望帮忙指导下。

感谢老哥的回复,此贴中做了问题请教,有空帮忙回复指导下,谢谢。

同时使用这个宏可以改善: lvgl/lv_conf_template.h at release/v8.3 · lvgl/lvgl (github.com)

方法是对的,但是图片多的话 管理麻烦 SD取图片确实慢 如果图片不大 放在flash中最好用