初级会员
- 积分
- 64
- 金钱
- 64
- 注册时间
- 2018-7-14
- 在线时间
- 17 小时
|
18金钱
为什么只显示矩形框,似乎除了显示问题一切都正常。请问大佬们可能是哪里的问题,目前毫无头绪。
显示驱动的移植代码:
static void disp_flush(lv_disp_drv_t * disp_drv, const lv_area_t * area, lv_color_t * color_p)
{
LCD_Fill(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);
}
屏幕的矩形填充函数:
void LCD_Fill(u16 sx,u16 sy,u16 ex,u16 ey,u16 color)
{
u16 i,j;
u16 width=ex-sx+1; //得到填充的宽度
u16 height=ey-sy+1; //高度
LCD_SetWindows(sx,sy,ex,ey);//设置显示窗口
for(i=0;i<height;i++)
{
for(j=0;j<width;j++)
Lcd_WriteData_16Bit(color); //写入数据
}
LCD_SetWindows(0,0,lcddev.width-1,lcddev.height-1);//恢复窗口设置为全屏
}
|
|