OpenEdv-开源电子网

 找回密码
 立即注册
查看: 810|回复: 0

大佬们遇到过LVGL显示不完整,还有花屏问题吗(运行的是官方的键盘DEMO)

[复制链接]

1

主题

2

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-10-10
在线时间
8 小时
发表于 2024-6-19 12:08:17 | 显示全部楼层 |阅读模式
15金钱
驱动IC是ST9976S  
LVGL版本号为:8.3
填充函数为:

void LCD_Color_Fill1(u16 sx, u16 sy, u16 ex, u16 ey, u16 *color)
{
    u16 height, width;
    u16 i, j;
    width = ex - sx + 1;             //得到填充的宽度
    height = ey - sy + 1;            //高度

    for(i = 0; i < height; i++)
    {
        LCD_SetCursor(sx, sy + i);       //设置光标位置
        LCD_WriteRAM_Prepare();     //开始写入GRAM

        for(j = 0; j < width; j++)LCD_DAT = color[i * width + j]; //写入数据
    }
}

display部分
static void disp_flush(lv_disp_drv_t * disp_drv, const lv_area_t * area, lv_color_t * color_p)
{
    /*The most simple case (but also the slowest) to put all pixels to the screen one-by-one*/

    int32_t x;
    int32_t y;
//    for(y = area->y1; y <= area->y2; y++) {
//        for(x = area->x1; x <= area->x2; x++) {
//            /*Put a pixel to the display. For example:*/
//            /*put_px(x, y, *color_p)*/
//            color_p++;
//        }
//    }
   
    LCD_Color_Fill1(area->x1,area->y1,area->x2,area->y2,(u16*)color_p);


    /*IMPORTANT!!!
     *Inform the graphics library that you are ready with the flushing*/
    lv_disp_flush_ready(disp_drv);
}



1.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 10:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表