Giter Site home page Giter Site logo

ssd_lvgl's Introduction

欢迎来到caszhao的基于Sigmastar系列的 LVGL源码仓库! Welcome to caszhao's LVGL git source of LVGL base on Sigmastar SSD Platform.

如何使用:

举例说明,由于我采用的是MIPI屏(800x1280分辨率,竖屏),如果要变为横屏使用
1、修改你项目中fbdev.ini为两倍framebuffer大小,  位于 project\board\i2m\SSC011A-S01A\config\fbdev.ini
FB_BUFFER_LEN = 8000
这个值是由800 * 1280 * 4 * 2 / 1024所得,请根据你自己的屏幕分辨率修改此值

2、修改 lv_conf.h
我的旋转90度举例如下:
  //这里是旋转前的GUI大小,旋转后以便在800 x 1280的屏幕上显示
  #define LV_HOR_RES_MAX          (1280)
  #define LV_VER_RES_MAX          (800)

  //不旋转为0,软件旋转设为1,硬件旋转设为2,默认不旋转
  /*
   * caszhao add, 2021-03-01
   * - 0:  NO ROTATION
   * - 1:  SOFT ROTATION
   * - 2:  GFX ROTATION
  */
  
  #define LV_MONITOR_ROTATE 0

  //双缓冲开关,0为不使能双缓冲,1为使能双缓冲,默认使能
  /*
   * caszhao add, 2021-03-01
   * - 0:  disable dual framebuffer
   * - 1:  enable dual framebuffer
  */
  
  #define LV_DUAL_FRAMEBUFFER 1
  
3、修改屏参
屏参修改位于ssd_lv_drivers/display/sstardisp.c, 修改SQ101AB4II405_800x1280_MIPI.h为你的屏参

如何编译:

本项目基于Sigmastar 201/202D源码,把ssd_lvgl目录放置于和sigmastar 201/202D 源码根目录(project,apps,boot,kernel等同级目录),编译指令.

1、make clean
2、make -j4 (-j4 是线程数,核多的,譬如我,使用make -j48)

ssd_lvgl目录下生成demossd即为所需。

双缓冲实现,基于ETTEETTE的实现小幅度修改,表示感谢,我主要增加了屏幕旋转功能,包括软转和硬转。支持90度,180度和270度旋转。后续更多的功能会陆续添加

features总结:

1、基于LVGL 7.10
2、实现双缓冲,fbdev.c内直接初始化屏参(ETTEETTE)
3、实现屏幕旋转(支持90度,180度和270度旋转)

硬转通过芯片内置的Graphic Engine实现, 从属于bitblit的eRotate

感谢ETTEETTE,感谢LVGL开源项目,感谢Sigmastar。

温馨提示:

欢迎与我沟通讨论技术细节,不局限于嵌入式,Linux,Android,Web等,

我写代码超过20年,曾经是一名Oier和初探门径的ACMer。 

写代码是我的生活的一部分。也欢迎你加入此开源项目。  

Contact :
wechat : icarxx
QQ: 497477

2021-03-01, By caszhao

Porting LVGL to Sigmastar SSD Series platform.

1、Base on Sigmastar SSD Series chips.
2、Double framebuffer. (Thanks to ETTEETTE's contribution)
3、Software rotation, just for 270` degree.
4、Add Sigmastar Graphic Engine. To implement Bitblit with rotation. Support 90`  180` 270` 

https://github.com/caszhao/ssd_lvgl

LVGL for frame buffer device

LVGL configured to work with /dev/fb0 on Linux.

When cloning this repository, also make sure to download submodules (`git submodule update --init --recursive`) otherwise you will be missing key components.

Check out this blog post for a step by step tutorial:
https://blog.lvgl.io/2018-01-03/linux_fb

ssd_lvgl's People

Contributors

caszhao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ssd_lvgl's Issues

donot start app

kill -9 902

mount /dev/sda1 /usr/usbfold/

cd /usr/usbfold/

ls

app libg726.so libmi_disp.so libmi_vdec.so
demo83 libjpeg.so libmi_divp.so libmi_venc.so
demossd libjpeg.so.7 libmi_gfx.so libmi_wlan.so
libCReader.so libjpeg.so.7.0.0 libmi_hdmi.so libz.so
libDSpotter.so libmi_ai.so libmi_panel.so libz.so.1
libcjson.so libmi_ao.so libmi_rgn.so libz.so.1.2.2
libg711.so libmi_common.so libmi_sys.so

./demossd

client [945] connected, module:sys
DISP width: 1024,height: 600
client [945] connected, module:disp
[MI WRN ]: MI_DISP_IMPL_BindVideoLayer[4233]: VideoLayer:0 is binded
[MI WRN ]: MI_DISP_IMPL_EnableVideoLayer[3742]: VideoLayer:0 is enabled

client [945] connected, module:panel
_HalPnlIfGetInfoParamConfig 471, LinkType is not Correct (MIPI_DSI != TTL)
_DrvPnlIfExecuteQuery 609, Query:PARAM, Ret:RET_CFGERR

[MI ERR ]: MI_PANEL_IMPL_SetPanelParam[958]: mi panel set panel param failed
[MI_PANEL_Init][294]LCD environment is Invalid
init_ssd20x_disp 155 52
xres: 1024,yres: 600,line_length: 4096,eFbColorFmt: 5 finfo.smem_start = 43126784 finfo.smem_len = 4194304
The evdev device was opened successfully.
client [945] disconnected, module:panel
client [945] disconnected, module:disp
client [945] disconnected, module:sys
[MI ERR ]: MI_SYS_IMPL_Exit[3821]: gSysInitCount:2
Segmentation fault

start app after show log client [945] disconnected

关于硬件gxf旋转不能正常显示的问题

你好,我现在遇到gxf旋转时,运行时就会出现问题,不能正常显示。
软件旋转可以正常使用,但是帧率浮动大,有时掉到5fps.

开机用脚本运行可正常,如果在终端中敲命令不能正常显示。

./demossd

client [904] connected, module:sys
DISP width: 800,client [904] connected, module:disp
height: 480
[MI WRN ]: MI_DISP_IMPL_BindVideoLayer[4233]: VideoLayer:0 is binded
[MI WRN ]: MI_DISP_IMPL_EnableVideoLayer[3742]: VideoLayer:0 is enabled

client [904] connected, module:panel
[MI_PANEL_Init][294]LCD environment is Invalid
init_ssd20x_disp 155 139
xres: 800,yres: 1280,line_length: 3200,eFbColorFmt: 5 finfo.smem_start = 38932480 finfo.smem_len = 8192000
The evdev device was opened successfully.
[fbdev_flush][37client [904] connected, module:gfx
2]exec function GE_EnableDynaClkGate
pass
phyAddr == MI_Moduledev_RegisterDev
NULL
[fbdev_flush][378]exec function pass
[fbdev_flush][380]exec function pass
[fbdev_flush][381]exec function pass
[fbdev_flush][433]exec function pass
[fbdev_flush][434]exec function pass
[fbdev_flush][372]exec function pass
[fbdev_flush][433]exec function pass
[fbdev_flush][434]exec function pass
....

然后就显示绿色界面,没有其它显示。

您好,请教个问题

您好,生成demossd之后,运行demossd报错,缺少libjepg.so文件,还需要liblvgl.so文件吗?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.