特殊用法
屏幕旋转
功能
在基于 LVGL 的 UI 框架下,实现横屏竖用、竖屏横用。
方法
静态旋转
开启转屏缓存
在 packages/artinchip/lvgl-ui/lv_driver/lv_fbdev.h
文件中,使能 USE_DRAW_BUF
宏定义:
c
...
#define USE_DRAW_BUF
...
1
2
3
2
3
设置旋转角度
在 packages/artinchip/lvgl-ui/lv_driver/lv_port_disp.c
文件中,设置旋转角度:
c
/* when define USE_DRAW_BUF, disp_drv.rotated can be
LV_DISP_ROT_90/LV_DISP_ROT_180/LV_DISP_ROT_270
*/
disp_drv.rotated = LV_DISP_ROT_90; // 设置旋转 90 度,共有三种角度可选:90、180、270
1
2
3
4
2
3
4
动态旋转
在程序运行到需要进行旋转屏幕的时候,调用 lv_disp_set_rotation
即可。 API 定义在 packages/artinchip/lvgl-ui/lvgl/src/hal/lv_hal_disp.c
。