lv_port_disp.c是屏幕驱动接口,是移植重点,可以拷贝lvgl / env_support / rt_thread / lv_rt_thread_port.h进行修改 如下所示: 只有一个put_px()函数需要自己根据屏幕类型去实现,即画点函数 1/**2* @file lv_port_disp_templ.c3*4*/56/*Copy this file as "lv_port_disp.c" and set this valu...
在lvgl文件夹中存放examples、src、lv_conf.h、lvgl.h文件->向工程添加文件:“品”新建组Middlewares/lvgl/examples/porting、Middlewares/lvgl/src/core、Middlewares/lvgl/src/draw、Middlewares/lvgl/src/extra、Middlewares/lvgl/src/font、Middlewares/lvgl/src/gpu、Middlewares/lvgl/src/hal、Middlewares/lvgl/...
typedef int32_t lv_coord_t;#elsetypedef int16_t lv_coord_t;#endif 默认不开启大尺寸(在lv_conf.h定义),因此是int16_t类型,-32768~32767,一般也不会有超过这么大尺寸的屏幕或者虚拟屏幕。 另外一个重要的类型是颜色,即lv_color_t。 typedefLV_CONCAT3(lv_color,LV_COLOR_DEPTH,_t)lv_color_t; 首...
// lvgl 初始化lv_init();// 初始化显示器和创建用于绘图的缓冲区lv_port_disp_init();//找到 LittelvGL 支持的输入设备lv_port_indev_init(); 然后我们就可以,写我们第一个LVGL的应用“Hello world”: /*更改活动屏幕的背景颜色*/lv_obj_set_style_bg_color(lv_scr_act(),lv_color_hex(0x003...
LV_EVENT_COVER_CHECK, /**< Check if the object fully covers an area. The event parameter is `lv_cover_check_info_t *`.*/ LV_EVENT_REFR_EXT_DRAW_SIZE, /**< Get the required extra draw area around the object (e.g. for shadow). The event parameter is `lv_coord_t *` to stor...
typedef int32_t lv_coord_t;#elsetypedef int16_t lv_coord_t;#endif 默认不开启大尺寸(在lv_conf.h定义),因此是int16_t类型,-32768~32767,一般也不会有超过这么大尺寸的屏幕或者虚拟屏幕。 另外一个重要的类型是颜色,即lv_color_t。 typedefLV_CONCAT3(lv_color,LV_COLOR_DEPTH,_t)lv_color_t; ...
lv_coord_tsrc_new_line_step_byte=src_new_line_step_px*LV_IMG_PX_SIZE_ALPHA_BYTE; lv_coord_tdest_h=lv_area_get_height(dest_area); lv_coord_tdest_w=lv_area_get_width(dest_area); for(y=0;y<dest_h;y++) { for(x=0;x<dest_w;x++) { ...
■ LVGL-基础对象(lv_obj_t)就是一个矩形 ■ LVGL-(lv_obj_t)基本属性 ■ LVGL-(lv_obj_t)大小 ■ LVGL-(lv_obj_t)位置 ■ LVGL-(lv_obj_t)对齐 ■ LVGL-(lv_obj_t)样式 ■ 设置样式函数 ■ 设置样式枚举 ■ 设置样式(大小,位置,背景,轮廓,边框,阴影,其他) ■ 设置控件子控件样式 ■ LVGL...
static void lv_example_flex_1(void) { static lv_coord_t col_dsc[] = {100, 100, 100, 100, LV_GRID_TEMPLATE_LAST}; static lv_coord_t row_dsc[] = {30,30,30,30,30,30,30,30,30,30, 30,30,30,30,30,30,30,30,30,30, ...
static void touchpad_get_xy(lv_coord_t * x, lv_coord_t * y) { /*Your code comes here*/ if(g_input.touch.flag == 'T') { (*x) = g_input.touch.x; (*y) = g_input.touch.y; } } 然后就是主函数中调用输入设备初始化。