36 lines
1.6 KiB
ReStructuredText
36 lines
1.6 KiB
ReStructuredText
|
lvgl常见问题
|
|||
|
=================================
|
|||
|
|
|||
|
:link_to_translation:`en:[English]`
|
|||
|
|
|||
|
|
|||
|
本节主要描述LVGL绘制UI功能常遇到的问题和解决方法。
|
|||
|
|
|||
|
Q:屏幕能显示UI但是颜色不正常
|
|||
|
|
|||
|
A:检查下工程中是否打开宏CONFIG_LV_COLOR_16_SWAP,该宏通常是用于解决QSPI/SPI LCD颜色异常的问题。
|
|||
|
|
|||
|
------------------------------------------
|
|||
|
|
|||
|
Q:工程上电执行立马出现死机问题
|
|||
|
|
|||
|
A:可先用add2line命令定位死机的位置,若死机在lvgl源码内部通常是申请不到内存或者内存被踩导致,具体可将log dump全进行现场还原分析。此外,lvgl的线程是不安全的,若在其他task中绘制UI,需要使用 ``lv_vendor_disp_lock()`` 和 ``lv_vendor_disp_unlock()`` 的接口进行代码保护。
|
|||
|
|
|||
|
------------------------------------------
|
|||
|
|
|||
|
Q:工程上电后log正常但是屏幕黑屏无显示
|
|||
|
|
|||
|
A:检查代码中使用的LCD类型和分辨率是否和实际LCD型号一致,且查看config文件中是否将选用的LCD宏打开,若log中lvgl的数值不为0则表示lvgl工作正常,需要重点排除LCD的问题。
|
|||
|
|
|||
|
------------------------------------------
|
|||
|
|
|||
|
Q:使用JPEG硬件解码提前解码到psram然后使用LVGL显示该图片显示异常。
|
|||
|
|
|||
|
A:硬件解码模块使用有限制,JEPG图像必须是YUV422图片,且图像的行数必须是32的倍数,列数必须是8的倍数。
|
|||
|
|
|||
|
------------------------------------------
|
|||
|
|
|||
|
Q:如何提高LVGL的帧率?
|
|||
|
|
|||
|
A:draw_buffer使用sram内存并使用双draw_buffer,同时打开 ``CONFIG_CACHE_ENABLE`` 以及 ``CONFIG_LV_ATTRIBUTE_FAST_MEM`` 。
|